Reputation: 11135
I tried to use android:versionName=">0.3"
in my AndroidManifest.xml
file (as a note to myself to bump it on the next release), but the NDK didn't like it:
Invalid attribute name:
C:/Android/android-ndk-r8d/build/gmsl/__gmsl:512: *** non-numeric second argument to `wordlist' function: ''. Stop.
And yet, the docs seem to indicate that I can make my versionName
whatever I want:
android:versionName
The version number shown to users. This attribute can be set as a raw string or as a reference to a string resource. The string has no other purpose than to be displayed to users. The
versionCode
attribute holds the significant version number used internally.
Upvotes: 5
Views: 2922
Reputation: 11135
Turns out the NDK uses some interesting GNU Make integer encoding functions on the versionName string. It seems these can handle letters and some special characters (e.g., ?
, -
, /
, \
, and +
) but not others (e.g., <
and >
).
I've opted to append a .0
to the end of my versionName to indicate that a bump is needed on the next release. In this case, I'm using 0.3.0
.
(for more on GMSL's Integer Arithmetic Functions, see Line 494 of the source)
Update:
We've switched to simply appending a +
character – 0.3+
. Works nicely.
Upvotes: 4
Reputation: 185
I used the command dos2unix AndroidManifest.xml and it clears up the error for me. I hope that helps.
How to build Openssl for Android on Windows with ndk8?
Upvotes: 1
Reputation: 1054
Simply add <uses-sdk android:minSdkVersion="8" />
before the application tag.
That worked for me.
Upvotes: 0
Reputation: 116010
Technically , there are no restrictions about what you put there.
However , please make it as easy to understand as possible , especially for final versions .
For alpha/beta/RC/preview versions , you can put whatever you wish, but still , put some kind of version numbers.
Upvotes: 0