我在基于EasyPermissions实现Unity的Android插件时遇到了一个问题。问题是由于
Caused by: java.lang.ClassNotFoundException: Didn't find class "pub.devrel.easypermissions.EasyPermissions$PermissionCallbacks"
因为Android Studio没有将相关的类打包到我的AAR文件中。
我尝试了各种方法:
所以最后我解压缩了EasyPlugin AAR并取出了里面的classes.jar文件并将其添加到Unity中。这工作。但它是一个非常手动的过程。
我需要添加到gradle文件中以便自动完成这项操作的一点点是什么?
我正在使用:
我的Gradle文件:
apply plugin: 'com.android.library'
android {
compileSdkVersion 26
buildToolsVersion "27.0.0"
defaultConfig {
minSdkVersion 16
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:26.+'
testCompile 'junit:junit:4.12'
compile 'pub.devrel:easypermissions:1.0.1'
provided files('unity/classes.jar')
}
PS。重写UnityPlayerActivity时出现了第二个问题,但为此提供了一个提供而不是编译的子句。
答案 0 :(得分:1)
检查以上评论。
如果您使用外部库,则可将其AAR添加到Unity中的Plugins / Android目录中。
出于某种原因,我以一种未被Unity注意到的方式添加它,Unity没有将其添加到生成的APK文件中。