Переменное имя пакета с плагином Maven Android
Я использую плагин Maven Android для создания своего приложения.
На самом деле, я создаю 3 "фирменные" версии одного и того же приложения (меняются значок приложения, цвета и т. Д., Но не функции). Я знаю, что мне нужно использовать разные имена пакетов для каждого приложения, чтобы они считались разными.
До сих пор мне удавалось иметь "динамические" значения, используя фильтры Maven в strings.xml:
<string name="app_name">${app_name}</string>
<string name="widget_name">${widget_name}</string>
<string name="app_icon">${app_icon}</string>
Проблема в том, что это не работает для имени пакета! Если я сделаю:
<manifest package="${foo.bar}">
ADT (ну, собственно, валидатор XML) жалуется, говоря, что в атрибутном пакете есть недопустимый символ '$'
Я не могу найти обходного пути для этого... Есть ли способ сказать ADT запустить фильтрацию ресурсов Maven или что-то в этом роде?
1 ответ
После дальнейших исследований это кажется довольно простым!
Вам просто нужно добавить <renameManifestPackage>
в конфигурации Maven Android Плагин. Кажется, работает, начиная с версии> 2.9.0:
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>maven-android-plugin</artifactId>
<version>2.9.0-beta-5</version>
<configuration>
...
<renameManifestPackage>${manifest_package}</renameManifestPackage>
</configuration>
</plugin>