현재 최신 Android Studio/Gradle 도구로 시스템을 업데이트하려고하고 있으며 일부 오류가 만연되고 있습니다.두 라이브러리가 동일한 권한을 사용하고자 할 때 Manifest Merger가 실패합니다.
우리는 permission.C2D_MESSAGE, 즉 Firebase와 XtremePush를 사용하는 2 개의 라이브러리를 가지고 있습니다. 문제는 응용 프로그램을 빌드하자 마자 "레코드가 없습니다"오류로 병합을 완료 할 수 없어 매니페스트 합병이 실패합니다 (이것은 매니페스트 합병의 버그입니다) ". 두 정의는 외부 라이브러리에, 우리는 병합 설정 할 수없는 XtremePush
<permission
android:name=".permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name=".permission.C2D_MESSAGE" />
중포 기지
<permission android:name="${applicationId}.permission.C2D_MESSAGE"
android:protectionLevel="signature"/>
<uses-permission android:name="${applicationId}.permission.C2D_MESSAGE"/>
: 우리가 문제로 보았을 때
우리는 다음과 같은 정의를 발견 매니 페스트 세부 정보를 변경하거나 규칙을 변경하십시오. 또한 두 라이브러리는 현재까지 최신 버전이므로 각 개발자 측에서 해결책이없는 것으로 보입니다. 매니페스트에 권한을 설정해도 아무 것도 변경되지 않았습니다.
고마워요! 안드로이드 매니페스트 파일 추가에서
"우리는 병합 규칙을 설정하거나 매니페스트 세부 정보를 변경할 수 없습니다"- 자신의 매니페스트에서 요소를 정의하고 IIRC : tools : overrideLibrary를 사용합니다. – CommonsWare
지금은 두 속성 (사용 권한 및 사용 권한)은 오른쪽 태그와 나는 태그가 없습니다, 페이스 북 라이브러리 제외. 방금 라이브러리의 패키지 이름으로 다른 라이브러리를 만들고 overrideLibrary를 추가 할 수 있습니까? –
Essi
매니페스트에''과''요소를 넣고 원하는대로 설정하고, 이들 요소에'tools : overrideLibrary'를 포함시킵니다. 그럼 최선을 다하겠습니다. –
CommonsWare