web-dev-qa-db-ja.com

ReactネイティブAndroidアプリにCrashlyticsを使用するにはどうすればよいですか?

React Native AndroidAPP。Fabricホームページの手順に従って、FabricのCrashlyticsを使用する方法を理解しようとしています。私のbuild.gradleファイルですが、ビルドは常にクラッシュします。

Crashlytics for React Native AndroidとCrashlyticsfor Native Android development using Android StudioとJava?

14
BigPun86

私はそれを何らかの方法で機能させましたが、それは完璧な解決策ではないかもしれません...

1:ファブリック/ crashlyticsをapp/build.gradleに追加します-ファイル(app/build.gradleにビルドスクリプトがなかったので、それを含めました。しかし、これかどうかはわかりませんいいね....)

buildscript {
  repositories {
     jcenter()
     maven { url 'https://maven.fabric.io/public' }
  }

  dependencies {
    classpath 'com.Android.tools.build:gradle:1.5.0'
    // The Fabric Gradle plugin uses an open ended version to react
    // quickly to Android tooling updates
    classpath 'io.fabric.tools:gradle:1.+'
  }
}

// Add this directly under: apply plugin: "com.Android.application"
apply plugin: 'io.fabric'

// and this directly under: apply from: "react.gradle"
repositories {
  jcenter()
  maven { url 'https://maven.fabric.io/public' }
}

// Last but not least add Crashlytics Kit into dependencies
compile('com.crashlytics.sdk.Android:crashlytics:2.5.5@aar') {
    transitive = true
}

2:最も重要なのは、どこにも言及されていないため(または、どこにも見つからなかったため)、CrashlyticsとFabricをMainActivityにインポートします:

import com.crashlytics.Android.Crashlytics;
import io.fabric.sdk.Android.Fabric;

:onCreateで-メソッドadd:

// Fabrics
Fabric.with(this, new Crashlytics());

これを行うと、少なくともネイティブコード(Javaコード)によって引き起こされるクラッシュレポートが表示されます。 JSを介して発生したクラッシュ-構文などは通知されません。そこで、既知のRedBox:Pを取得します。

幸運を!

12
BigPun86

React Nativeの新しいバージョンの場合、Bundleをインポートし、次のように独自のonCreateメソッドを配置する必要があります。

// Added Bundle to use onCreate which is needed for our Fabrics workaround
import Android.os.Bundle;

..........

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Fabrics
    Fabric.with(this, new Crashlytics());

}

OnCreateが削除されているため、これが適切かどうかはわかりませんが、私にとっては機能します

4
BigPun86

これを試してください: https://fabric.io/kits/Android/crashlytics/install

Androidインストールで編集する必要のあるすべてのファイルを要約します。AndroidManifest.xmlファイルの場合は、Android:valueキー(以下など)を実際のAPIキーに置き換えます。忘れずに取得してください。組織設定からのAPIキー... 1。ログイン https://fabric.io/settings/organizations および2.ビルドシークレットをクリックします。

      <meta-data
      Android:name="io.fabric.ApiKey"
      Android:value="<api key here>"
  />
0
Shahram Anver