Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android FirebaseRemoteConfig.fetchAndActivate()失败,错误为';注册过多';对于某些用户_Android_Firebase Remote Config - Fatal编程技术网

Android FirebaseRemoteConfig.fetchAndActivate()失败,错误为';注册过多';对于某些用户

Android FirebaseRemoteConfig.fetchAndActivate()失败,错误为';注册过多';对于某些用户,android,firebase-remote-config,Android,Firebase Remote Config,我的代码使用远程配置检查应用程序更新,如下所示: ForceUpdateChecker.with(this).onUpdateNeeded(this).check(); final FirebaseRemoteConfig firebaseRemoteConfig = FirebaseRemoteConfig.getInstance(); // set in-app defaults Map<String, Object> remoteConfig

我的代码使用远程配置检查应用程序更新,如下所示:

    ForceUpdateChecker.with(this).onUpdateNeeded(this).check();

    final FirebaseRemoteConfig firebaseRemoteConfig = FirebaseRemoteConfig.getInstance();

    // set in-app defaults
    Map<String, Object> remoteConfigDefaults = new HashMap();
    remoteConfigDefaults.put(ForceUpdateChecker.KEY_UPDATE_REQUIRED, false);
    remoteConfigDefaults.put(ForceUpdateChecker.KEY_CURRENT_VERSION, "2.00.229");
    remoteConfigDefaults.put(ForceUpdateChecker.KEY_UPDATE_URL,
            "https://play.google.com/store/apps/details?id=com.chiaramail.pento");

    firebaseRemoteConfig.setDefaultsAsync(remoteConfigDefaults);
    firebaseRemoteConfig.fetchAndActivate() // fetch config from server and activate
            .addOnCompleteListener(new OnCompleteListener<Boolean>() {
                @Override
                public void onComplete(@NonNull Task<Boolean> task) {
                    if (task.isSuccessful()) {
                        Log.d(TAG, "FirebaseRemoteConfig fetched");
                    } else {
                        Log.d(TAG, "FirebaseRemoteConfig error:" + task.getResult());
                    }
                }
            });
ForceUpdateChecker.with(this).onUpdateRequired(this.check();
最终的FirebaseRemoteConfig FirebaseRemoteConfig=FirebaseRemoteConfig.getInstance();
//设置应用内默认值
Map remoteConfigDefaults=newhashmap();
remoteConfigDefaults.put(ForceUpdateChecker.KEY\u UPDATE\u REQUIRED,false);
remoteConfigDefaults.put(ForceUpdateChecker.KEY\u当前版本,“2.00.229”);
remoteConfigDefaults.put(ForceUpdateChecker.KEY\u UPDATE\u URL,
"https://play.google.com/store/apps/details?id=com.chiaramail.pento");
firebaseRemoteConfig.setDefaultsAsync(remoteConfigDefaults);
firebaseRemoteConfig.fetchAndActivate()//从服务器获取配置并激活
.addOnCompleteListener(新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
Log.d(标记“FirebaseRemoteConfig已获取”);
}否则{
Log.d(标记“FirebaseRemoteConfig错误:”+task.getResult());
}
}
});

自从我更新了包含此代码的版本后,几个用户已经崩溃,结果是“注册太多”。我相信我已经看过了所有与此问题相关的SO帖子,但没有一篇使用fetchAndActivate()。另外,目前我只有大约1200个用户,所以希望抓取的数量不是问题所在;此外,据我所知,Remote Config是为了将更改推送到整个用户群而构建的,因此1200个用户(最多6000个设备)应该不是问题。

您确定错误与此代码有关吗?你怎么知道的?快速的网络搜索表明,太多的注册是来自FCM而不是远程配置的错误。@DougStevenson我知道,但Firebase在崩溃报告电子邮件中返回的就是这个。与此同时,我放弃了使用远程配置进行应用程序更新,现在正试图用谷歌API实现它,但也没有多大成功。如果搜索没有发现任何东西,我可能会发布另一个问题。