ライブラリモジュールの1つにFirebaseアナリティクスを使用したいと思います。私は設定ファイル(google-services.json
)がクライアントアプリケーションフォルダからアクセス可能であるか、またはクライアント側から同じものを設定するようにプログラムしたいと思います。google-services.json設定ファイルなしでFirebaseアナリティクスを設定することはできますか?
上記のシナリオを実装する方法はありますか?
ありがとうございます。
ライブラリモジュールの1つにFirebaseアナリティクスを使用したいと思います。私は設定ファイル(google-services.json
)がクライアントアプリケーションフォルダからアクセス可能であるか、またはクライアント側から同じものを設定するようにプログラムしたいと思います。google-services.json設定ファイルなしでFirebaseアナリティクスを設定することはできますか?
上記のシナリオを実装する方法はありますか?
ありがとうございます。
あなたは親切に行くスルーhow-does-firebase-initialize-on-androidを理解することもworking-with-multiple-firebase-projects-in-an-android-app
を参照し、詳しくは、手動で以下のように
をあなたのライブラリプロジェクトの設定を初期化することができます。 Firebaseモジュールがどのように初期化されているかを示します。
Firebaseを使用するAndroidアプリの場合、すべてのFirebase APIの設定を管理するFirebaseAppオブジェクト があります。アプリが になったときにコンテンツプロバイダによって自動的に初期化される で、通常は対話する必要はありません。しかし、 ひとつのアプリケーションから複数のプロジェクトにアクセスしたい場合は、 に別々のFirebaseAppが必要です。それは です。デフォルト以外のインスタンスを初期化するまでです。 Firebaseが自動的に作成します。
FirebaseOptions options = new FirebaseOptions.Builder()
.setApplicationId("1:530266078999:android:481c4ecf3253701e") // Required for Analytics.
.setApiKey("AIzaSyBRxOyIj5dJkKgAVPXRLYFkdZwh2Xxq51k") // Required for Auth.
.setDatabaseUrl("https://project-1765055333176374514.firebaseio.com/") // Required for RTDB.
.build();
FirebaseApp.initializeApp(this /* Context */, options, "secondary");
希望私はあなたの質問に答えました。
* google_app_id *がありません。 Firebase Analyticsが無効になっています。このエラーは今すぐ取得しています –
@ArunChand有効なapp_idで初期化しましたか?setApplicationId( "mobilesdk_app_id")? –
はい、私はダッシュボードでアプリのIDを確認しています。 –
私は面白い回避策を見つけました。次のように試してみてください。 google-services.json
をFirebaseの統合用サンプルアプリgoogle providesに入れてください。それをコンパイルします。
パスapp/build/generated/res/google-services/debug/values/
を見て、values.xml
ファイルを生成する必要があります。このファイルには、記述したエラーで言及した一連の文字列が含まれています。これらの文字列をプロジェクトのvalue.xmlファイルにコピーします。それでおしまい。
google-services.jsonがこれ以外の何もしないことを確認してください。なぜ彼らは自転車を発明しましたが、あなたのリソースにいくつかの文字列をコピーするだけでコピーすることをお勧めしませんか? –
重複https://stackoverflow.com/questions/38962025/can-i-initialize-firebase-without-using-google-services-json/44396850#44396850 – zest