2016-12-27 79 views
0

引起:java.lang.IllegalStateException:默認FirebaseApp在此進程中未初始化com.augmentedreality.projectar。確保首先調用FirebaseApp.initializeApp(Context)。如何初始化Firebase存儲?

對於過去的48小時裏,我一直停留在這個例外,並且至今沒有線索什麼可能會造成這一點,我提到的所有這些問題的答案:

但問題仍然存在。我正在使用Firebase存儲以及Firebase數據庫。我使用Firebase存儲使用Service下載圖像。 Service與Github [here]的Firebase快速入門示例相同。

現在,除了在該行拋出:

mStorageRef = FirebaseStorage.getInstance().getReferenceFromUrl("https://firebasestorage.googleapis.com/v0/b/xxxxxxx-xx-xxxxxx.appspot.com/o/Coca-Cola.jpg?alt=media&token=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"); 

基於對上述提到的問題的答案,我已經做了以下修改:

1)AppMain.java

public class AppMain extends Application { 
    @Override 
    public void onCreate() { 
     super.onCreate(); 
     FirebaseApp.initializeApp(this); 
     Firebase.setAndroidContext(this); 
     //if(!FirebaseApp.getApps(this).isEmpty()) { 
     // FirebaseDatabase.getInstance().setPersistenceEnabled(true); 
     //} 
    } 
} 

2)依賴關係

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:24.2.1' 
    compile 'com.google.firebase:firebase-core:9.6.1' 
    compile 'com.google.firebase:firebase-database:9.6.1' 
    compile 'com.firebase:firebase-client-android:2.5.2+' 
    compile 'com.google.firebase:firebase-storage:9.6.1' 
    compile 'com.google.android.gms:play-services:10.0.0' 
} 

問題:如何解決這個問題?

+0

您可以下載整個快速入門應用程序,並將自己的代碼移入其中,而不必將其拉開以使用自己的代碼。 https://github.com/firebase/quickstart-android/tree/master/storage –

回答

1

刪除

FirebaseApp.initializeApp(this); 
Firebase.setAndroidContext(this); 
compile 'com.firebase:firebase-client-android:2.5.2+' 

你不需要他們..

使用

compile 'com.google.firebase:firebase-core:10.0.1' 
compile 'com.google.firebase:firebase-database:10.0.1' 
compile 'com.google.firebase:firebase-storage:10.0.1' 
compile 'com.google.android.gms:play-services:10.0.1' 

private DatabaseReference mDatabase; 
// ... 
mDatabase = FirebaseDatabase.getInstance().getReference(); 

代替, 爲完整的說明 - Firebase Docs

+0

這沒有什麼區別! – OBX

+2

也刪除'編譯'com.firebase:firebase-client-android:2.5.2 +''。不要混用Firebase版本2.x和> = 9。 –

+0

@FrankvanPuffelen你是對的。回答編輯。 – Nirel

0

而不是通過修改這個代碼, 你sh應該更新Android Studio版本。可能是你的問題會解決。