2017-12-04 7 views
0

チャットアプリを終了するのを止めているJavaエラーを解決しようとしています。もちろん、それは火災のエラーです!私はAndroidを初めて使っています。あなたが答えたときに、単純な用語を使って説明できれば、それは多くの助けになります。 -FirebaseApp.initializeApp(コンテキスト); Androidのエラー。

Caused by: java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.example.teo.myapplication. Make sure to call FirebaseApp.initializeApp(Context) first. 
                       at com.google.firebase.FirebaseApp.getInstance(Unknown Source) 
                       at com.google.firebase.database.FirebaseDatabase.getInstance(Unknown Source) 
                       at com.example.teo.myapplication.MainActivity.onCreate(MainActivity.java:52) 

問題についての私の実際のコードは、この(ライン51及び52)のようになります。

FirebaseApp.initializeApp(Context); 
    dataBase = FirebaseDatabase.getInstance(); 

それが動作するはずのように見えますが、Context GETはエラーになります!それは古いexpression expectedのエラーです。私はそれを修正するためにすべてを試しました。

FirebaseApp.initializeApp(this) 

FirebaseApp.initializeApp(this.context) 

FirebaseApp.initializeApp(context) 

FirebaseApp.initializeApp(many other things) 

を、何も機能しません: 私が試したプラスいくつかの詳細を以下!私がうまく動作することがわかるのは、(Context)ですが、コンテキスト... UGHにはエラーがあります。

私はMainActivityとChatActivityの両方で呼び出しを試みましたが、両方にエラーがあります。私を助けてください!

これら

は私の依存関係がある:私は働く実際のコードを使用しようとした

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile 'com.android.support:appcompat-v7:25.3.1' 
    compile 'com.android.support.constraint:constraint-layout:1.0.2' 
    compile 'com.android.support:design:25.3.1' 
    compile 'com.google.firebase:firebase-storage:10.2.0' 
    compile 'com.google.firebase:firebase-auth:10.2.0' 
    compile 'com.google.firebase:firebase-core:10.2.1' 
    compile 'com.google.firebase:firebase-database:10.2.0' 
    compile 'com.google.android.gms:play-services-ads:11.0.4' 
    compile 'com.google.code.gson:gson:2.8.1' 
    compile 'com.google.firebase:firebase-messaging:11.0.4' 
    compile 'com.firebase:firebase-client-android:2.5.0' 





    testCompile 'junit:junit:4.12' 

} 

例:

FirebaseApp.initializeApp(this); 
    dataBase = FirebaseDatabase.getInstance(); 

しかし、それは言っていないにも関わらずあらゆるありますエラー、私は私のアプリを実行すると、すぐに終了し、同じエラーがポップアップします。

ありがとうございます!

EDIT:

ChatActivityのonCreateメソッドのコード:

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.chat_activity); 




    Intent intent = getIntent(); 
    username = intent.getStringExtra("username"); 
    chatroomName = intent.getStringExtra("Chat_room_name"); 
    Incognito = intent.getBooleanExtra("Incognito", false); 



    listview = (ListView) findViewById(R.id.list_view); 
    chatsend = (EditText) findViewById(R.id.chat_function); 
    final ArrayList<String> listArray = new ArrayList<String>(); 
    MyListAdapter adapter = new MyListAdapter(getApplicationContext(), listArray, ChatActivity.this); 
    listview.setAdapter(adapter); 
    adapter.notifyDataSetChanged(); 
    context = this; 
    FirebaseApp.initializeApp(this); 
    dataBase = FirebaseDatabase.getInstance(); 
    ref = dataBase.getReference(); 

    // listArray.add(chatsend); 

} 

ありがとう!このコードは、コメントの試行を修正しようとした後に変更されましたが、前にも述べたように、以外のものを(Context)と入力すると、マニフェストファイルを含む

編集:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.teo.myapplication"> 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:roundIcon="@mipmap/ic_launcher_round" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme"> 

     <activity 
      android:name=".MainActivity" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.NoActionBar"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity android:name=".ChatActivity"/> 
    </application> 

</manifest> 

ありがとう!

+0

コードを投稿してもらえますか? –

+0

こんにちは、投稿できますか? –

+0

編集を確認して、私のチャットアクティビティを追加しました。コード – amStrugglingPlsHelp

答えて

1

追加:

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

アプリのGradleファイル内

ドキュメントによると:

としては、ドキュメントで述べている:

どれFirebaseAppの初期化がでのみ発生する必要がありますアプリのメインプロセス。メインプロセス以外のプロセスでのFirebaseの使用はサポートされておらず、リソースの競合に関連する問題を引き起こす可能性があります。

アクティビティでは初期化する必要があります。

はマニフェストの例にアプリケーションクラスを追加します。

 <applicaton 
     android:name="MyApplication" 

、この操作を行います。

public class MyApplication extends Application { 
    @Override 
public void onCreate() { 
    super.onCreate(); 
    FirebaseApp.initializeApp(this); 
} 

をし、活動から初期設定を削除します。基本クラスであるアプリケーションクラスで初期化する必要があります。

+0

がすでにそこにあります!私は私のアプリケーションのbuild.gradleに私のプラグインを含めるのを忘れてしまった!ごめんなさい! – amStrugglingPlsHelp

+0

マニフェストファイルを表示 –

+0

最新の編集でマニフェストファイルを追加しました。 – amStrugglingPlsHelp

0

現在のFirebase SDKと従来のSDKの両方を使用しています(com.firebase:firebase-client-android:2.5.0)。これは1年以上使用されていません。新しい開発では、従来のSDKを使用する理由はありません。レガシーSDKの使用を解消するには、Upgrade Guideの手順に従ってください。

すべてのFirebaseとGoogle Playライブラリに同じバージョン番号を使用することも重要です。あなたは10.2.0,10.2.1、および11.0.4を持っています。

+0

私はそれを調べてみました。私は何かをダウンロードしなければならないか、私はちょうど元を変更するかどうか分からない。 10.2.0〜11.0.4と自動的にダウンロードされたものとします – amStrugglingPlsHelp

+0

@am 11.0.4最新バージョンでもありません。 Firebaseのマニュアルを確認する –

関連する問題