0

私は自分のjni/Android.mkファイルにこれを持っています:

LOCAL_CFLAGS := -LANG=en

しかし、プログラムを実行するとLANGは存在しません! 何か案は?

4

1 に答える 1

2

代わりに -D オプションを使用します。

LOCAL_CFLAGS := -D LANG=en

C の #define と同等です。次に、 LANG を value の定数として使用しますen。これは文字列「en」ではなく、引用符で囲まれていない識別子であることに注意してください。したがって、次の使用法は問題ありません。

int en = 1, de = 2, es = 3;

int CurrentLang = LANG; //Translates to CurrentLang = en;

またはこのように:

#if LANG==en
//English localization stuff...
#endif

以下はそうではありませんが:

char * CurrentLang = LANG; //Error: en is an unknown identifier. It's not a string.
于 2012-09-11T13:22:35.143 に答える