私はネイティブC++エンジンをAndroid NDKに移植しています。 いくつかの環境やツールを試した結果、最新のvs-android(0.9)が最も快適であることがわかりました。 私はそれにいくつかの問題があります(将来の質問では質問する必要があるかもしれません)が、今のところ -vs-androidを使用して複数のアンドロイドプラットフォーム(場合によってはABI)を構築するにはどうすればよいですか?
ネイティブエンジンはネイティブ共有ライブラリにコンパイルされます。我々はエンジンがアンドロイド8 API互換(アンドロイド2.2)であることを望んでいます。
私たちは内部的に使用するテスターアプリケーションをいくつか持っています。私はAndroidにもその1つを移植しましたが、ネイティブのアクティビティ(およびその上にネイティブアプリの接着剤)を使用しているので、アンドロイド9(2.3)が必要です。
私はいくつかのモジュールプロジェクトを持っています - スタティックライブラリ - エンジンとテスターの両方のアプリケーションで使用されています。私はエンジンのアンドロイド8、そしてテスターのアンドロイド9にコンパイルするのに必要です。 それに加えて、arm5とarm7の両方をサポートしたいと考えています。
ndkビルドスクリプトでは、これをかなり簡単に行うことができます。 MS-Build(vs-android使用)では指数関数的な数の設定が必要なようです(デバッグ/プロファイル/リリースについて忘れないでください)。
これらの設定をすべて作成せずにこれを行う方法はありますか?たとえば、私がエンジンをビルドすると、アンドロイド8とアーム5とアーム7の両方のモジュールがコンパイルされ、テスト担当者がアンドロイド9とアーム5とアーム7のモジュールをコンパイルします各プロジェクトとデバッグ、プロファイル、リリースの4つのほぼ同じ構成を作成しますか?
私はthisを見つけましたが、それを使用する方法や親子プロジェクトの手法を適用することが可能かどうかはわかりません。
(パラメータを変更したいときはいつでも、すべての設定で変更する必要があるという事実にもかかわらず、設定を作成することは怠け者ではなく、同じように 'vs-androidを使うのではなく、ndk-buildを使い、apkを手作業でビルドする')。
ありがとうございます!
(?ところで、誰かがVS-アンドロイドタグを追加してくださいすることができます)
EDIT: 私は部分的な解決策を思い付いた - 唯一のAPIレベルの問題に。下の私の答えを見てください。
タグを追加しました。指数関数的な構成の問題については、一度にいくつかの構成でビルド・パラメーターを変更することは可能ですが、毎回オンにすることを忘れないようにしてください。 – liori
ありがとうございます。私はAPIレベルの問題のためのちょっとした解決策を見つけました(あなたはソリューションごとに1つしかないと仮定するとすぐに)、私はすぐに投稿します。しかし、私は "一度にいくつかの設定でパラメータを変更する"に興味があります... – Asaf