Maven Android插件的变量包名称

Maven Android插件的变量包名称,android,maven,adt,Android,Maven,Adt,我正在使用Maven Android插件构建我的应用程序 事实上,我正在为同一个应用程序构建3个“品牌”版本(应用程序图标、颜色等…会发生变化,但不会改变功能)。我知道我需要为每个应用程序使用不同的包名,以便将它们视为不同的 到目前为止,我已经使用strings.xml中的Maven过滤器成功地获得了“动态”值: <string name="app_name">${app_name}</string> <string name="widget_name">${

我正在使用Maven Android插件构建我的应用程序

事实上,我正在为同一个应用程序构建3个“品牌”版本(应用程序图标、颜色等…会发生变化,但不会改变功能)。我知道我需要为每个应用程序使用不同的包名,以便将它们视为不同的

到目前为止,我已经使用strings.xml中的Maven过滤器成功地获得了“动态”值:

<string name="app_name">${app_name}</string>
<string name="widget_name">${widget_name}</string>
<string name="app_icon">${app_icon}</string>
${app_name}
${widget_name}
${app_icon}
问题是这对包名不起作用!如果我这样做:

<manifest package="${foo.bar}">

ADT(实际上是XML验证器)抱怨说属性包包含无效字符“$”


我找不到任何解决方法。。。有没有办法告诉ADT启动Maven resources filtering之类的东西?

经过进一步研究,这似乎相当容易

您只需在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>

com.jayway.maven.plugins.android.generation2
maven android插件
2.9.0-beta-5
...
${manifest_package}

它对您有用吗?我得到了一个无法安装到Simulatorman上的应用程序,这是一年半前回答的,它曾经工作过,不知道现在有了最新的SDK,很抱歉它工作了!这是我的误解:)谢谢你的回答!