firebase - Flutter Firebase远程配置类.../FirebaseRemoteConfigSettings中没有虚拟方法isDeveloperModeEnabled()Z
问题描述
我最近升级了 Flutter 项目中的所有 firebase 库。之后我收到消息:
/flutter (27126): [ERROR:flutter/shell/platform/android/platform_view_android_jni_impl.cc(43)] java.lang.NoSuchMethodError: 类 Lcom/google/firebase/remoteconfig/FirebaseRemoteConfigSettings 中没有虚拟方法 isDeveloperModeEnabled()Z;或其超类(“com.google.firebase.remoteconfig.FirebaseRemoteConfigSettings”的声明出现在 /data/app/package_name-1UBO7FEPHLsC2_eb7itJLA==/base.apk!classes3.dex 中)
之后我的应用程序因错误而崩溃:
[致命:flutter/shell/platform/android/platform_view_android_jni_impl.cc(942)] 检查失败:CheckException(env)。
目前我正在使用:
firebase_remote_config: ^0.4.0+2
firebase_core:0.5.0+1
我在 android/build.gradle 中的依赖项:
dependencies {
classpath 'com.android.tools.build:gradle:3.6.4'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath 'com.google.gms:google-services:4.3.4'
classpath 'io.fabric.tools:gradle:1.28.1'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
}
android/app/build.gradle
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
testImplementation 'junit:junit:4.13.1'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
implementation 'androidx.multidex:multidex:2.0.1'
implementation 'com.google.firebase:firebase-config:20.0.0'
implementation 'com.facebook.android:facebook-login:7.1.0'
implementation 'com.google.firebase:firebase-messaging:21.0.0'
implementation 'com.google.android.gms:play-services-basement:17.5.0'
configurations.all {
resolutionStrategy.force 'com.google.android.gms:play-services-base:17.1.0'
}
}
解决方案
终于解决了..
Okey不仅改变了这条线
properties.put("inDebugMode", firebaseRemoteConfigInfo.getConfigSettings().isDeveloperModeEnabled());
至
properties.put("inDebugMode", false);
&改变这个
FirebaseRemoteConfigSettings settings = new FirebaseRemoteConfigSettings.Builder().setDeveloperModeEnabled(debugMode).build();
firebaseRemoteConfig.setConfigSettings(settings);
至
FirebaseRemoteConfigSettings settings = new FirebaseRemoteConfigSettings.Builder().build();
firebaseRemoteConfig.setConfigSettingsAsync(settings);
你还需要改变这个
FirebaseRemoteConfig.getInstance().setDefaults(defaults);
至
FirebaseRemoteConfig.getInstance().setDefaultsAsync(defaults);
仍然是一个烦人的问题,应该尽快解决
推荐阅读
- php - Mysql中如何使用下划线对数据进行排序
- javascript - axios删除会导致401未授权
- hibernate - spring jpa规范加入原因n+1
- python - 为什么我的神经网络输出错误?
- r - 如何根据日期排除数据?
- r - textInput 在闪亮时没有反应性生成
- powershell - 读取和过滤字符串行的问题
- vue.js - 如何使用 this.$http.get() 从 url 获取 json 数据?
- arcgis - 是否可以从 ArcGIS Javascript API 中的 CSVLayer 中获取具有特定属性的项目数?
- angular - 如何启用对 swagger-ui 和 swagger-codegen 的 csrf 支持