我正在将应用 CSipsimple 作为库导入到名为 Conversations 的应用中。我遵循了 here 接受的答案但是当我尝试同步 gradle 文件时出现错误:
C:....gabotel\libs\CSipSimple\app\src\main\aidl\com\csipsimple\api\ISipConfiguration.aidl
Error:(25) couldn't find import for class com.csipsimple.api.SipProfile
和
C:...gabotel\libs\CSipSimple\app\src\main\aidl\com\csipsimple\api\ISipService.aidl
Error:(25) couldn't find import for class com.csipsimple.api.SipProfileState
Error:(26) couldn't find import for class com.csipsimple.api.SipCallSession
Error:(27) couldn't find import for class com.csipsimple.api.MediaState
所有这些类都有单独的 .aidl 文件并声明为可打包的。比如sipprofile:
package com.csipsimple.api;
parcelable SipProfile;
但问题依旧。
我已阅读 here在接受的答案中,解决方案涉及修改 base_rules.mk 文件,但我找不到它。
有什么想法吗?
为了以防万一,库 gradle 是:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.0.0'
}
}
allprojects {
repositories {
jcenter()
}
}
apply plugin: 'com.android.library'
dependencies {
compile 'com.android.support:support-v4:21.0.3'
}
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 21
}
sourceSets {
main {
manifest.srcFile 'app/src/main/AndroidManifest.xml'
java.srcDirs = ['app/src']
resources.srcDirs = ['app/src']
aidl.srcDirs = ['app/src']
renderscript.srcDirs = ['app/src']
res.srcDirs = ['app/res']
assets.srcDirs = ['app/assets']
}
}
}
最佳答案
就我而言,重新创建可打包的 AIDL 文件解决了问题。删除并重新创建,例如SipProfile.aidl(内容好像已经正确了)包含:
package com.csipsimple.api;
parcelable SipProfile;
我右键单击 aidl 文件夹 -> 新建 -> AIDL -> 新建 Aidl 文件
。根本原因可能是内部 gradle 问题...
或许将其与 Android Studio 重启或 Build -> Clean project
相结合也可能有所帮助。
关于Android studio 找不到aidl导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35204269/