Crashlytics は Google Play Instant で動作しますか?動作する場合、プロジェクトを正しく設定するにはどうすればよいですか?
はい、CrashlyticsはAndroid Instant Appsで動作します。実際、テスト済みで正常に動作するため、この段階で推奨されるクラッシュレポートソリューションです。
セットアップの場合:
基本機能モジュールでbuild.gradle
ファイルを開き、 public docs site の手順に従って、Crashlyticsを通常どおりに構成します。
基本機能モジュールのbuild.gradle
ファイルのトップレベルで、次のCrashlyticsフラグを追加します。
...
Android {
...
}
crashlytics { instantAppSupport true }
...
docs のように、ベースライブラリプロジェクトbuild.gradle
にInstant Appライブラリの依存関係がまだない場合は、追加します。
compile 'com.google.Android.instantapps:instantapps:1.1.0'
注:この依存関係を使用するには、新しいmaven.google.com
リポジトリをまだgradleファイルに追加していない場合は追加する必要があります( ここを参照) 詳細)。
次に、コードで、Crashlyticsを設定した後、現在の実行がインスタントアプリである場合にログに記録するブール値を設定します。
Crashlytics.setBool("InstantApp", InstantApps.isInstantApp(context));
このアプリはCrashlyticsに依存しています。 https://fabric.io/sign_up でアクセスにサインアップし、Androidビルドツールをインストールして、チームメンバーにこのアプリの組織に招待するよう依頼してください。
問題が修正されるまで、回避策としてこれを試してください。ビルド後、ファイルcom_crashlytics_build_id.xml
を見つけて開き、Fabricキーを含む<string>
をそこからコピーして、機能モジュールの通常のstrings.xml
ファイルに貼り付けます。次に、再構築して実行します。
上記の問題は、Fabricgradleプラグインv1.24.5で修正されました。 Gradleファイルには次のものが必要です。
classpath 'io.fabric.tools:gradle:1.+'
ビルドを同期して、更新されたプラグインを修正してプルダウンする以外に何もする必要はありません。
受け入れられた回答の内容に加えて、アプリケーション(apk)モジュールのbuild.gradleファイルに次の行を追加して実行する必要もありました。
repositories {
maven { url 'https://maven.fabric.io/public' }
}
1.24.5でテストしたところ、問題ありませんでした。
私は次のようにプロジェクトをセットアップすることができました:
テストインスタントアプリがビルドされ、クラッシュがトリガーされ、ダッシュボードがログに記録しました。
問題が解決しない場合は、 Google Issue Tracker で報告してください。再度開いて調査します。