ネイティブC++エンジンをAndroidNDKに移植しています。いくつかの環境とツールを試した後、最新のvs-android(0.9)が最も快適であることがわかりました。私はそれにいくつかの問題を抱えています(将来の質問でいくつか尋ねる必要があるかもしれません)が、今のところ-ここに1つあります:
ネイティブエンジンは、ネイティブ共有ライブラリにコンパイルされます。エンジンをandroid-8API互換(android 2.2)にする必要があります。
内部で使用するテスターアプリケーションがいくつかあります。そのうちの1つをAndroidにも移植しましたが、ネイティブアクティビティ(およびその上にネイティブアプリの接着剤)を使用しているため、android-9(2.3)が必要です。
エンジンとテスターアプリの両方で使用されるいくつかのモジュールプロジェクト(静的ライブラリ)があります。エンジンの場合はandroid-8に、テスターの場合はandroid-9にコンパイルするには、これらが必要です。これらすべてに加えて、arm5とarm7の両方をサポートしたいと考えています。
ndkビルドスクリプトを使用すると、これをかなり簡単に行うことができます。MS-Build(vs-androidが使用)では、指数関数的な数の構成が必要になるようです(デバッグ/プロファイル/リリースを忘れないでください)。
これらすべての構成を作成せずにこれを行う方法はありますか?たとえば、エンジンをビルドすると、android-8とarm5とarm7の両方のモジュールがコンパイルされ、テスターをビルドすると、android-9とarm5とarm7のモジュールがコンパイルされます。プロジェクトごと、およびデバッグ、プロファイル、リリース用に4つのほぼ同じ構成を作成しますか?
私はこれを見つけましたが、それをどのように使用するか、そしてここで親/子プロジェクトの手法を適用することが可能かどうかはわかりません。
(「パラメーターを変更するときはいつでも、すべての構成でパラメーターを変更する必要があるという事実にもかかわらず、怠惰になるのをやめて構成を作成する」ように私に言っても、コメントとして受け入れられますが、答えとしてではありません。同じことが'vs-androidを使用する代わりにndk-buildを使用してapkを手動でビルドする')にも当てはまります。
ありがとう!
(ところで、誰かがvs-androidタグを追加してくれませんか?)
編集: 私は部分的な解決策を思いつきました-APIレベルの問題に対してのみ。以下の私の答えを参照してください。