0

RecyclerView을 사용하는 라이브러리 모듈을 개발했습니다. 라이브러리 모듈을 compile project(":fuumodule")을 사용하는 응용 프로그램에 포함 시키면 모든 것이 잘 동작합니다. 그러나이 라이브러리 (compile(name:'fuumodule', ext:'aar'))가 포함 된 응용 프로그램에 생성 된 .aar 파일을 추가하면 을 사용하는 라이브러리 모듈에서 Activity을 열면 응용 프로그램이 충돌합니다..aar 클래스 내에서 android.support.v7.widget.RecyclerView를 확장하는 중 오류가 발생했습니다.

Error inflating class android.support.v7.widget.RecyclerView

RecyclerView 충돌합니다. 다른 모든 종속성은 라이브러리 모듈에서 작동합니다.

답변

0

.aar 파일로 라이브러리를 추가하면 라이브러리의 종속성 라이브러리 클래스가 .aar 파일에 포함되지 않는다고 가정합니다. 당신은 이슈를 것이다 하지 사용 classes.jar

여기에 관한 토론을이

, https://groups.google.com/forum/#!topic/adt-dev/0ZAP8AVUZVw

> 당신의 lib 디렉토리> 외부 라이브러리에서 프로젝트보기에서 안드로이드 스튜디오의 왼쪽 창에있는 것을 확인하실 수 있습니다 그것을 aar에 포함 시키십시오. 리모트 아티팩트를 사용하는 의 요점은 단지에 의존하지 않고 대신 아티팩트 주소를 사용하여 'aa'r을 사용하는 프로젝트가 모두 의존성 그래프를 해결하고 중복을 찾고 충돌을 해결할 수 있습니다 ...

그래서, 귀하의 경우에는 RecyclerView라는 종속성이 앱 수준 build.gradle에 추가되어야합니다.

+0

다른 의존성은'com.android.support : appcompat-v7 : 25.0.1'처럼 작동합니다. 내 라이브러리 모듈 (.aar)에 도구 모음이 있는데이 때문에 도구 모음이 충돌하지 않습니다. –

+0

내 생각 엔 앱 build.gradle에도 appcompat 의존성이있을 것입니다. – Bob

+0

사실, 그렇습니다. 그러나 이것은 단지 예일뿐입니다. 나는 내 app build.gradle에없는 몇 가지 다른 종속성을 가지고 있으며 여전히 작동합니다. (gson 라이브러리와 마찬가지로 'compile group :'com.google.code.gson ', 이름은'gson ', 버전은'2.4 '). 내 app build.gradle에는'com.android.support : appcompat-v7 : 25.0.1' 만 있습니다. –

관련 문제