5

我尝试android:versionName=">0.3"在我的AndroidManifest.xml文件中使用(作为我自己的说明,以便在下一个版本中增加它),但 NDK 不喜欢它:

Invalid attribute name: 
C:/Android/android-ndk-r8d/build/gmsl/__gmsl:512: *** non-numeric second argument to `wordlist' function: ''.  Stop.

然而,文档似乎表明我可以制作versionName任何我想要的东西:

android:versionName

向用户显示的版本号。此属性可以设置为原始字符串或字符串资源的引用。该字符串除了显示给用户之外没有其他用途。versionCode属性保存内部使用的重要版本号。

4

4 回答 4

4

结果发现 NDK 在 versionName 字符串上使用了一些有趣的 GNU Make 整数编码函数。似乎这些可以处理字母和一些特殊字符(例如,、、、、和),但?不能处理其他字符(例如,-和)。/\+<>

我选择在.0我的 versionName 末尾附加 a 以指示下一个版本需要一个凹凸。在这种情况下,我使用0.3.0.

(有关 GMSL 的整数算术函数的更多信息,请参阅源代码的第 494 行)

更新:

我们已经切换到简单地附加一个+字符 - <code>0.3+。效果很好。

于 2013-02-10T22:55:53.010 回答
1

我使用了命令 dos2unix AndroidManifest.xml,它为我清除了错误。我希望这会有所帮助。

如何使用 ndk8 在 Windows 上为 Android 构建 Openssl?

于 2013-03-25T19:20:06.913 回答
0

从技术上讲,放在那里的内容没有任何限制。

但是,请尽可能使其易于理解,尤其是对于最终版本。

对于 alpha/beta/RC/preview 版本,你可以放任何你想要的,但仍然可以放一些版本号。

于 2013-02-10T22:07:24.567 回答
0

只需<uses-sdk android:minSdkVersion="8" />在应用程序标记之前添加。

这对我有用。

于 2013-02-13T17:42:50.427 回答