Home > Enterprise >  java.lang.NoSuchMethodError: No virtual method setSkipClientToken(Z)V in class Lcom/facebook/GraphRe
java.lang.NoSuchMethodError: No virtual method setSkipClientToken(Z)V in class Lcom/facebook/GraphRe

Time:03-02

It was working fine before I have done nothing, no packages update, no gradle update no nothing just created new build and this error occurs. but for some team members the error occur after gradle sync.

The issue is that build is generating successfully without any error but when opens the app it suddenly gets crash (in both debug and release mode)

Error

    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)

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

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'
          }
      }
  }
}

packages

"dependencies": {
  "@eva-design/eva": "^2.1.0",
  "@react-native-async-storage/async-storage": "^1.15.14",
  "@react-native-community/blur": "^3.6.0",
  "@react-native-community/checkbox": "^0.5.0",
  "@react-native-community/netinfo": "^6.0.1",
  "@react-native-community/toolbar-android": "^0.1.0-rc.2",
  "@react-native-firebase/analytics": "^10.3.1",
  "@react-native-firebase/app": "^10.3.0",
  "@react-native-firebase/auth": "^10.3.1",
  "@react-native-firebase/crashlytics": "^10.3.1",
  "@react-native-firebase/dynamic-links": "^10.3.1",
  "@react-native-firebase/firestore": "^10.3.1",
  "@react-native-firebase/iid": "^10.3.1",
  "@react-native-firebase/in-app-messaging": "^10.3.1",
  "@react-native-firebase/messaging": "^10.3.1",
  "@react-native-firebase/perf": "^10.3.1",
  "@react-native-firebase/remote-config": "^10.3.1",
  "@react-native-firebase/storage": "^10.3.1",
  "@react-native-picker/picker": "^2.1.0",
  "@react-navigation/bottom-tabs": "^6.0.9",
  "@react-navigation/native": "^6.0.6",
  "@react-navigation/stack": "^6.0.11",
  "@types/react-native": "^0.65.5",
  "@ui-kitten/components": "^5.1.0",
  "axios": "^0.19.0",
  "i18n-js": "^3.5.1",
  "moment": "^2.24.0",
  "native-base": "2.13.8",
  "react": "17.0.2",
  "react-content-loader": "^4.3.4",
  "react-native": "0.66.0",
  "react-native-actions-sheet": "^0.5.6",
  "react-native-adjust": "^4.28.0",
  "react-native-amplitude-analytics": "^0.2.7",
  "react-native-animatable": "^1.3.3",
  "react-native-code-push": "^7.0.4",
  "react-native-config": "^1.3.3",
  "react-native-contacts": "^5.0.7",
  "react-native-dots-pagination": "^0.2.0",
  "react-native-fbsdk-next": "^6.2.0",
  "react-native-fingerprint-scanner": "^6.0.0",
  "react-native-floating-action": "^1.22.0",
  "react-native-geocoding": "^0.4.0",
  "react-native-geolocation-service": "^5.2.0",
  "react-native-gesture-handler": "^1.5.2",
  "react-native-get-random-values": "^1.4.0",
  "react-native-html-to-pdf-lite": "^0.11.0",
  "react-native-image-base64": "^0.1.4",
  "react-native-image-pan-zoom": "^2.1.11",
  "react-native-image-picker": "^4.1.2",
  "react-native-image-resizer": "^1.2.0",
  "react-native-in-app-review": "^2.1.7",
  "react-native-linear-gradient": "^2.5.6",
  "react-native-loading-spinner-overlay": "^1.1.0",
  "react-native-material-menu": "^1.0.0",
  "react-native-material-textfield": "^0.16.1",
  "react-native-modal": "^13.0.0",
  "react-native-phone-call": "^1.0.9",
  "react-native-ratings": "^7.3.0",
  "react-native-reanimated": "^1.13.0",
  "react-native-safe-area-context": "^3.3.2",
  "react-native-screens": "^3.9.0",
  "react-native-share": "^7.2.1",
  "react-native-smooth-pincode-input": "^1.0.9",
  "react-native-sms-retriever": "https://github.com/sarmad1995/react-native-sms-retriever.git",
  "react-native-snap-carousel": "^3.9.1",
  "react-native-splash-screen": "^3.2.0",
  "react-native-svg": "^12.1.1",
  "react-native-version-check": "^3.4.2",
  "react-native-version-number": "^0.3.6",
  "react-native-view-shot": "^3.1.2",
  "react-native-walkthrough-tooltip": "^1.3.0",
  "react-redux": "^7.1.3",
  "redux": "^4.0.4",
  "redux-logger": "^3.0.6",
  "redux-persist": "^6.0.0",
  "redux-thunk": "^2.3.0",
  "rn-fetch-blob": "^0.12.0",
  "urbanairship-react-native": "^12.0.0",
  "uuid": "^8.3.0"
},

CodePudding user response:

We have fixed the issue by replacing

implementation 'com.facebook.android:facebook-marketing:[4,5)'

by

implementation 'com.facebook.android:facebook-marketing:latest.release'

in android/app/build.gradle file.

Posted this so someone out there facing the same problem will find the solution easily. It took me and my team around one and a half day to figure it out as there is no clear solution out there.

Solution Ref: here

  • Related