我遇到了与本机app android build相关的问题。
应用程序是使用expo创建并导出的,以便实现firebase通知。
运行应用程序崩溃并提供此异常后:
java.lang.NoClassDefFoundError: versioned.host.exp.exponent.modules.api.components.admob.RNPublisherBannerViewManager
at versioned.host.exp.exponent.modules.api.components.admob.RNAdMobPackage.createViewManagers(RNAdMobPackage.java:33)
at com.facebook.react.ReactInstanceManager.createAllViewManagers(ReactInstanceManager.java:746)
at com.facebook.react.CoreModulesPackage.createUIManager(CoreModulesPackage.java:190)
at com.facebook.react.CoreModulesPackage.access$200(CoreModulesPackage.java:69)
at com.facebook.react.CoreModulesPackage$8.get(CoreModulesPackage.java:149)
at com.facebook.react.CoreModulesPackage$8.get(CoreModulesPackage.java:146)
at com.facebook.react.LazyReactPackage.createNativeModules(LazyReactPackage.java:81)
at com.facebook.react.NativeModuleRegistryBuilder.processPackage(NativeModuleRegistryBuilder.java:106)
at com.facebook.react.ReactInstanceManager.processPackage(ReactInstanceManager.java:1093)
at com.facebook.react.ReactInstanceManager.processPackages(ReactInstanceManager.java:1064)
at com.facebook.react.ReactInstanceManager.createReactContext(ReactInstanceManager.java:996)
at com.facebook.react.ReactInstanceManager.access$600(ReactInstanceManager.java:107)
at com.facebook.react.ReactInstanceManager$4.run(ReactInstanceManager.java:832)
at java.lang.Thread.run(Thread.java:818)
可能是什么问题?我怎么解决它?
这是我目前的gradle文件: 申请插件:' com.android.application'
android {
compileSdkVersion 27
buildToolsVersion '27.0.2'
defaultConfig {
applicationId "com.sensmedia.diez"
minSdkVersion 19
targetSdkVersion 27
versionCode 1
versionName "1.0"
multiDexEnabled true
ndk {
abiFilters 'armeabi-v7a', 'x86'
}
manifestPlaceholders = [
'appAuthRedirectScheme': 'com.sensmedia.diez'
]
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dexOptions {
javaMaxHeapSize "8g"
}
lintOptions {
abortOnError false
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INFTICE.txt'
exclude 'META-INFTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INFtice.txt'
exclude 'META-INFcense.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
exclude 'META-INF/MANIFEST.MF'
exclude 'META-INF/maven/com.google.protobuf/protobuf-java/pom.xml'
exclude 'META-INF/maven/com.google.protobuf/protobuf-java/pom.properties'
}
}
task exponentPrebuildStep(type: Exec) {
workingDir '../../'
if (System.getProperty('os.name').toLowerCase().contains('windows')) {
commandLine 'cmd', '/c', '.\\.expo-source\\android\\detach-scripts\\prepare-detached-build.bat'
} else {
commandLine './.expo-source/android/detach-scripts/prepare-detached-build.sh'
}
}
preBuild.dependsOn exponentPrebuildStep
repositories{
flatDir{
dirs 'libs'
}
mavenLocal()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
compile(project(':react-native-fcm')) {
exclude group: 'com.google.android.gms'
exclude group: "com.google.firebase"
}
compile('com.google.firebase:firebase-core:10.0.1') {
force = true;
}
compile ('com.google.firebase:firebase-messaging:10.0.1') {
force = true;
}
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.3.1'
compile 'com.android.support:multidex:1.0.1'
compile 'com.parse.bolts:bolts-tasks:1.4.0'
compile 'com.parse.bolts:bolts-applinks:1.4.0'
compile('host.exp.exponent:expoview:22.0.0@aar') {
exclude group: 'com.facebook.android', module: 'facebook-android-sdk'
exclude group: 'com.facebook.android', module: 'audience-network-sdk'
exclude group: 'io.nlopez.smartlocation', module: 'library'
exclude module: 'com.android.support:appcompat-v7:27.+'
exclude group: 'com.google.android.gms'
transitive = true;
}
compile ('com.facebook.android:facebook-android-sdk:4.+') {
exclude module: 'bolts-android'
exclude module: 'com.android.support:appcompat-v7:27.+'
exclude group: 'com.google.android.gms'
}
compile('com.facebook.android:audience-network-sdk:4.+') {
exclude module: 'play-services-ads'
exclude module: 'bolts-android'
exclude module: 'com.android.support:appcompat-v7:27.+'
exclude group: 'com.google.android.gms'
}
compile('io.nlopez.smartlocation:library:3.2.11') {
transitive = false
exclude module: 'com.android.support:appcompat-v7:27.+'
exclude group: 'com.google.android.gms'
}
}
apply plugin: 'com.google.gms.google-services'