2016-12-28 2 views
2

제목과 동일합니다. Firebase config를 가져 오면 앱이 다운됩니다. 동일한 애플리케이션에서 Firebase 데이터베이스 및 충돌보고가 완벽하게 작동합니다.Firebase Remoteconfig 가져 오기가 Android 앱에 충돌합니다

오류 님에게 메일 :

Caused by: java.lang.IllegalStateException: Activity has been destroyed 
        at android.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1854) 
        at android.support.v4.app.BackStackRecord.commitInternal(BackStackRecord.java:643) 
        at android.support.v4.app.BackStackRecord.commitAllowingStateLoss(BackStackRecord.java:608) 
        at com.google.android.gms.internal.zzrn.zza(Unknown Source) 
        at com.google.android.gms.internal.zzra.zzc(Unknown Source) 
        at com.google.android.gms.internal.zzra.zzs(Unknown Source) 
        at com.google.android.gms.tasks.zzh$zza.zzv(Unknown Source) 
        at com.google.android.gms.tasks.zzh.addOnCompleteListener(Unknown Source) 
        at com.foo.foo.Common.DatabaseManager.getRemoteConfig(DatabaseManager.java:85) 
        at 

내가 무슨 일이 일어나고 있는지 이해가 안 돼요. 관련 코드 :

private void getRemoteConfig() { 
    remoteConfig = FirebaseRemoteConfig.getInstance(); 
    FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder() 
      .setDeveloperModeEnabled(BuildConfig.DEBUG) 
      .build(); 
    remoteConfig.setConfigSettings(configSettings); 
    remoteConfig.setDefaults(R.xml.remote_config_defaults); 
    long cacheExpiration = 3600; 

    //expire the cache immediately for development mode. 
    if (remoteConfig.getInfo().getConfigSettings().isDeveloperModeEnabled()) { 
     cacheExpiration = 0; 
    } 

    remoteConfig.fetch(cacheExpiration).addOnCompleteListener(this, new OnCompleteListener<Void>() { 
     @Override 
     public void onComplete(@NonNull Task<Void> task) { 
      if (task.isSuccessful()) { 
       remoteConfig.activateFetched(); 
      } 
      //LocalBroadcastManager.getInstance(null).sendBroadcast(new Intent(AppConstants.kNotificationonRemoteSettingsLoaded));*/ 
     } 


    }); 
} 

Graddle :

compile 'com.google.firebase:firebase-core:9.6.1' 
compile 'com.google.firebase:firebase-auth:9.6.1' 
compile 'com.google.firebase:firebase-database:9.6.1' 
compile 'com.google.firebase:firebase-storage:9.6.1' 
compile 'com.google.firebase:firebase-config:9.6.1' 
compile 'com.google.firebase:firebase-crash:9.6.1' 
compile 'com.google.firebase:firebase-messaging:9.6.1' 
compile 'com.android.support:appcompat-v7:25+' 
compile 'com.google.android.gms:play-services-maps:9.6.1' 

apply plugin: 'com.google.gms.google-services' 
+0

제발요? 아무도이 문제에 직면하지 않았습니까? – Teddy

답변

1

나는 같은 문제를 했어. 문제는 Super.oncreate() 전에 firebase 원격 설정 가져 오기를 사용했다는 것입니다. getRemoteConfig() 절차를 어디에서 확인하십시오!