내 프로젝트의 빌드 프로세스를 진행하고 있습니다. 기본적으로 같은 소스에서 2 개의 앱을 제작하려고합니다. 이 작업을 수행하는 데 다른 프로필을 사용하고 있습니다.패키지 이름을 Lib 폴더로 변경 Android/Maven
나는 maven이 앱 내에서 이름과 URL을 변경하도록 구성 할 수있었습니다. 패키징을 변경해야하므로 두 앱이 동시에 기기에있을 수 있습니다.
이 내 프로젝트가 부모 POM 2 개 자식 리딩
첫 번째 하위 POM으로 설정하면이 APKlib로 패키지 된 라이브러리입니다. packaing은 com.companylib입니다.
두 번째 하위 POM은 실제 APK를 만들고 apklib를 참조합니다. 이것은 com.company로 패키지됩니다.
현재이 구성으로 매니페스트에서 packaing을 변경하고 있습니다.
<plugin>
<groupId>com.jayway.maven.plugins.android.generation2</groupId>
<artifactId>android-maven-plugin</artifactId>
<inherited>true</inherited>
<configuration>
<renameManifestPackage>${manifest_pakage}</renameManifestPackage>
<sign>
<debug>false</debug>
</sign>
<zipalign>
<verbose>true</verbose>
<inputApk>${project.build.directory}/${project.artifactId}.apk</inputApk>
<outputApk>${project.build.directory}/${project.artifactId}-signed-aligned.apk
</outputApk>
</zipalign>
<manifest>
<debuggable>true</debuggable>
<versionCodeAutoIncrement>true</versionCodeAutoIncrement>
</manifest>
<proguard>
<skip>true</skip>
</proguard>
</configuration>
<executions>
<execution>
<id>manifestUpdate</id>
<phase>process-resources</phase>
<goals>
<goal>manifest-update</goal>
</goals>
</execution>
<execution>
<id>alignApk</id>
<phase>package</phase>
<goals>
<goal>zipalign</goal>
</goals>
</execution>
</executions>
</plugin>
나는 내가 사용하는 다른 프로필에 manifest_pakage를 정의합니다. 이것은 첫 번째 하위 POM에서 정의됩니다.
두 프로필 모두 정상적으로 작동하며 동일한 장치에 둘 다 설치할 수 있습니다. 그러나 roboguice가 APKLIB를 참조하려고 할 때 준비 앱에서 문제가 발생합니다. 다음과 같은 오류가 나타납니다.
그래서 apklib의 패키지는 변경되지 않았습니다. 이상한 것은 내가 생산에 포장을 대체한다는 것입니다, 그리고 그것은 ok (tho 나는 그것을 같은 포장으로 대체합니다)를 작동합니다.
이렇게 설정하면 빌드가 lib의 패키징을 변경해야합니까?
lib에 기본 앱과 다른 패키지 이름이 있으면 괜찮습니까?