Android 尝试在空对象上调用虚拟方法com.google.firebase.remoteconfig.com.google.firebase.remoteconfig.RemoteConfigComponent.getDefault()
我尝试使用Firebase remote config并遵循所有步骤,但当我打开应用程序时,它崩溃并告诉我此错误:Android 尝试在空对象上调用虚拟方法com.google.firebase.remoteconfig.com.google.firebase.remoteconfig.RemoteConfigComponent.getDefault(),android,firebase,Android,Firebase,我尝试使用Firebase remote config并遵循所有步骤,但当我打开应用程序时,它崩溃并告诉我此错误: java.lang.NullPointerException: Attempt to invoke virtual method 'com.google.firebase.remoteconfig.FirebaseRemoteConfig com.google.firebase.remoteconfig.RemoteConfigComponent.getDefault()' on
java.lang.NullPointerException: Attempt to invoke virtual method 'com.google.firebase.remoteconfig.FirebaseRemoteConfig com.google.firebase.remoteconfig.RemoteConfigComponent.getDefault()' on a null object reference
这是我的代码:
private void initializeLogic() {
final FirebaseRemoteConfig mFirebaseRemoteConfig;
mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
.setMinimumFetchIntervalInSeconds(3600)
.build();
mFirebaseRemoteConfig.setConfigSettingsAsync(configSettings);
mFirebaseRemoteConfig.setDefaultsAsync(R.drawable.remote_config_defaults);
mFirebaseRemoteConfig.fetchAndActivate()
.addOnCompleteListener(this, new OnCompleteListener<Boolean>() {
@Override
public void onComplete(@NonNull Task<Boolean> task) {
if (task.isSuccessful()) {
boolean updated = task.getResult();
Toast.makeText(MainActivity.this, "Fetch and activate succeeded",Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(MainActivity.this, "Fetch failed",Toast.LENGTH_SHORT).show();
}
}
});
}
private void initializeLogic(){
最终FirebaseRemoteConfig mFirebaseRemoteConfig;
mFirebaseRemoteConfig=FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings=新的FirebaseRemoteConfigSettings.Builder()
.setMinimumFetchIntervalInSeconds(3600)
.build();
mFirebaseRemoteConfig.setConfigSettingsAsync(配置设置);
mFirebaseRemoteConfig.setDefaultsAsync(R.drawable.remote\u config\u默认值);
mFirebaseRemoteConfig.fetchAndActivate()
.addOnCompleteListener(这是新的OnCompleteListener(){
@凌驾
未完成的公共void(@NonNull任务){
if(task.issusccessful()){
布尔更新=task.getResult();
Toast.makeText(MainActivity.this,“获取并激活成功”,Toast.LENGTH_SHORT.show();
}否则{
Toast.makeText(MainActivity.this,“获取失败”,Toast.LENGTH_SHORT.show();
}
}
});
}
我创建了remote_config_defaults.xml,并将其放在drawable文件夹中
如何解决这个问题请帮忙。
注意:我在firebase控制台中添加了参数,该参数与remote_config_defaulte.xml中的键相同