我正在將本機C++引擎移植到Android NDK。 嘗試一些環境和工具後,我發現最新的vs-android(0.9)是最舒服的。 我確實有一些問題(有些我可能需要在將來的問題中提出),但現在 - 這是一個:如何使用vs-android構建多個Android平臺(可能還有ABI)?
本地引擎編譯爲本地共享庫。我們希望引擎能夠兼容android-8 API(android 2.2)。
我們有一些內部使用的測試儀應用程序。我也將其中的一個移植到了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個幾乎相同的配置以及調試,配置文件和發行版?
我發現this,但我不知道如何使用它,如果可以在這裏應用父/子項目的技術。
(告訴我'停止懶惰,只是創建配置,儘管事實上,無論何時您想更改參數,您都必須在所有配置中更改它'作爲評論可接受,但請 - 不 - 作爲答案。'使用ndk-build並手動構建你的apk而不是使用vs-android')也是如此。
謝謝!
(順便說一句,有人可以添加VS-Android的標籤?)
編輯: 我想出了一個部分解決方案 - 只對API級別問題。請參閱下面的答案。
添加標籤。對於指數配置問題:可以一次更改多個配置中的構建參數,但每次記住開啓它都是一件痛苦的事情。 – liori
謝謝。我發現了API級別問題的一種解決方案(假設您每個解決方案只有一個解決方案),我將很快發佈。但我對「一次更改幾個配置的參數」感興趣...... – Asaf