Muh*_*mer 8 android nosuchmethoderror gradle build.gradle react-native
在我什么也没做之前,它工作得很好,没有包更新,没有 gradle 更新,没有什么,只是创建了新的构建,并且发生了这个错误。但对于某些团队成员来说,错误发生在 gradle 同步之后。
问题是构建成功生成,没有任何错误,但打开应用程序时突然崩溃(在调试和发布模式下)
错误
E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #3
java.lang.NoSuchMethodError: No virtual method setSkipClientToken(Z)V in class Lcom/facebook/GraphRequest; or its super classes (declaration of 'com.facebook.GraphRequest' appears in /data/app/~~aLf3pfLySq5u7zpIAr2Hlg==/com.package-name-99h4GcP3GNx2sMs76AXGvA==/base.apk)
at com.facebook.marketing.internal.RemoteConfigManager.getRemoteConfigQueryResponse(RemoteConfigManager.java:87)
at com.facebook.marketing.internal.RemoteConfigManager.access$000(RemoteConfigManager.java:43)
at com.facebook.marketing.internal.RemoteConfigManager$1.run(RemoteConfigManager.java:64)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Run Code Online (Sandbox Code Playgroud)
gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.9-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Run Code Online (Sandbox Code Playgroud)
build.gradle
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
buildToolsVersion = "30.0.2"
minSdkVersion = 21
compileSdkVersion = 30
targetSdkVersion = 30
ndkVersion = "21.4.7075529"
}
repositories {
google()
mavenCentral()
jcenter()
// maven {
// url 'https://maven.fabric.io/public'
// }
maven { url "https://www.jitpack.io" }
}
dependencies {
classpath("com.android.tools.build:gradle:4.2.2")
classpath 'com.google.gms:google-services:4.2.0' // Google Services plugin
// Add the Fabric Crashlytics plugin.
// classpath 'io.fabric.tools:gradle:1.31.2'
// firebase performance sdk
classpath 'com.google.firebase:perf-plugin:1.4.0'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.7.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
mavenCentral()
mavenLocal()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url("$rootDir/../node_modules/react-native/android")
}
maven {
// Android JSC is installed from npm
url("$rootDir/../node_modules/jsc-android/dist")
}
google()
jcenter()
maven { url 'https://www.jitpack.io' }
}
}
subprojects {
afterEvaluate {project ->
if (project.hasProperty("android")) {
android {
buildToolsVersion "28.0.3"
compileSdkVersion 28
}
}
}
}
subprojects {
afterEvaluate {project ->
if (project.hasProperty("android")) {
android {
compileSdkVersion 29
buildToolsVersion '29.0.3'
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
packages
E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #3
java.lang.NoSuchMethodError: No virtual method setSkipClientToken(Z)V in class Lcom/facebook/GraphRequest; or its super classes (declaration of 'com.facebook.GraphRequest' appears in /data/app/~~aLf3pfLySq5u7zpIAr2Hlg==/com.package-name-99h4GcP3GNx2sMs76AXGvA==/base.apk)
at com.facebook.marketing.internal.RemoteConfigManager.getRemoteConfigQueryResponse(RemoteConfigManager.java:87)
at com.facebook.marketing.internal.RemoteConfigManager.access$000(RemoteConfigManager.java:43)
at com.facebook.marketing.internal.RemoteConfigManager$1.run(RemoteConfigManager.java:64)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Run Code Online (Sandbox Code Playgroud)
我们通过替换解决了这个问题
implementation 'com.facebook.android:facebook-marketing:[4,5)'
Run Code Online (Sandbox Code Playgroud)
经过
implementation 'com.facebook.android:facebook-marketing:latest.release'
Run Code Online (Sandbox Code Playgroud)
在android/app/build.gradle
文件中。
发布此内容是为了让遇到同样问题的人可以轻松找到解决方案。我和我的团队花了大约一天半的时间才弄清楚这个问题,因为没有明确的解决方案。
解决方案参考:这里
归档时间: |
|
查看次数: |
5548 次 |
最近记录: |