1

私はJNI、C ++に不慣れで、ファイルを作成します。私のApplication.mkサンプルAndroid-JNI-C++プロジェクトでは、それらはAPP_MODULESプロパティです。

AndroidNDKのドキュメントには

APP_MODULES

この変数はオプションです。定義されていない場合、NDKはデフォルトで、Android.mkによって宣言されたすべてのモジュールと、それに含まれる可能性のあるサブメイクファイルをビルドします。

APP_MODULESが定義されている場合、Android.mkファイルのLOCAL_MODULE定義に表示されるモジュール名のスペースで区切られたリストである必要があります。NDKはモジュールの依存関係を自動的に計算することに注意してください。

また、StackOverflowに関する他の質問から、各モジュールには独自のが必要であることがわかっていますAndroid.mk

しかし、このコンテキストでのモジュールとは何ですか?モジュールを1つだけではなく、複数持つことの利点は何ですか?

4

1 に答える 1

1

1 つの Android.mk で多数のモジュールを定義できます。ビルドまたはコピーする各ライブラリ (静的または共有) (ビルド済みライブラリと呼ばれます) は、個別のモジュールです。

Android でコードを別々のライブラリに分割する主な理由は、他のすべてのプラットフォームと同じです。NDK ビルド スキームには、もう 1 つのケースがあります。モジュールごとにコンパイル パラメーターを指定する方がはるかに簡単です。そのため、-std=c99 と -std=c++0x を混在させる必要がある場合、簡単な回避策は 2 つの静的ライブラリを使用することです。 .

于 2013-02-02T22:24:59.803 に答える