集成Facebook SDK后出现devtodev NoSuchMethodError问题求助
解决方案:java.lang.NoSuchMethodError: getGooglePlayInstantParam()Z
这个错误的核心原因是项目中依赖的com.android.installreferrer:installreferrer库版本过低——getGooglePlayInstantParam()方法是在installreferrer 2.2版本才新增的,当前项目引入的版本不包含该方法,导致devtodev SDK调用时触发找不到方法的致命异常。以下是具体解决步骤:
强制统一installreferrer版本
在项目模块的build.gradle(Groovy)或build.gradle.kts(Kotlin)中添加依赖强制配置,确保所有第三方库(包括Facebook SDK、devtodev)都使用兼容的高版本installreferrer:
Groovy语法:configurations.all { resolutionStrategy.force 'com.android.installreferrer:installreferrer:2.2' }Kotlin DSL语法:
configurations.all { resolutionStrategy.force("com.android.installreferrer:installreferrer:2.2") }可根据官方稳定版本迭代升级至更高版(如2.3),2.2版本已满足方法调用需求。
验证依赖冲突
执行命令./gradlew 你的模块名:dependencies(替换为实际模块名,如app),查看依赖树中installreferrer的版本,确认强制配置已覆盖所有旧版本引用。清理重建项目
执行./gradlew clean清除构建缓存,再重新构建项目,确保新依赖版本被正确打包。混淆规则补充(若启用混淆)
在proguard-rules.pro中添加规则避免installreferrer类被混淆:-keep class com.android.installreferrer.api.** { *; }
内容的提问来源于stack exchange,提问作者Дима Денежко
相关产品推荐
相关产品推荐

