今天在迁移一个老的Android项目到Android Studio过程中,遇到了dependencies中包含AAR文件的问题,经过反复的尝试,终于找到了解决办法。
原来项目的/app/build.gradle如下
dependencies {
compile 'com.radiusnetworks:AndroidProximityLibrary:1.1.4@aar'
compile 'com.android.support:support-v4:20.0.+'
}
aar文件位于/app/lib目录下,gradle就是报找不到依赖错误,
Error:Failed to find: com.radiusnetworks:AndroidProximityLibrary:1.1.4
<a href="openFile">Open File</a><br><a href="open.dependency.in.project.structure">Open in Project Structure dialog</a>
无论是把dependencies写在/app/build.gradle下,还是/build.gradle下,错误依旧。
突然想到aar文件本来是一个module,只是简单zip打包了下,可以直接import这个module。
File -->New Modlue -->,找到aar文件
最后修改项目依赖为
dependencies {
compile project(':AndroidProximityLibrary-1.1.4')
compile 'com.android.support:support-v4:20.0.+'
}
问题完美解决,Bingo!
最后附上aar包的目录结构,
- /AndroidManifest.xml (mandatory)
- /classes.jar (mandatory)
- /res/ (mandatory)
- /R.txt (mandatory)
- /assets/ (optional)
- /libs/*.jar (optional)
- /jni/<abi>/*.so (optional)
- /proguard.txt (optional)
- /lint.jar (optional)
|