版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/JadynAi/article/details/50899314
今天当我天真的打开Android Studio,准备开始一天开心的工作时。一个小小的问题迎头向我砸来,那就是有一个小模块需要用到源码里的AIDL。然后我直接把它扔在相应的包里了。如图:
包名什么的都是Ok的,我已经按照代码里的包名改过来了,但是还是一直编译不通过。记得Eclipse里直接放到这里就行了啊。
- 然后经过一番查证以及实验,最终确定了必须在app:里的build.grade里加上这样一句话,才能正确的编译AIDL:
sourceSets {
main {
aidl.srcDirs=['src/main/java/com/android/internal/telephony','src/main/java/android/telephony']
}
}
这里需要注意,AIDL的路径名必须正确否则还是编译失败的。
最后完成的build.grade应该是这样子的
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.jadyn.mobilesafe"
minSdkVersion 19
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
sourceSets {
main {
aidl.srcDirs=['src/main/java/com/android/internal/telephony','src/main/java/android/telephony']
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.0'
compile 'com.android.support:recyclerview-v7:23.2.0'
}
以上