【Flutter】sentry_flutterでクラッシュサポート

Flutter

sentry_flutterとは

sentry_flutterは、Flutter用のSentry SDKです。
このパッケージは、AndroidおよびiOS向けのネイティブSDKを介してネイティブクラッシュをサポートし、Androidの場合はJava/Kotlin/C/C++、iOSの場合はObjective-C/Swiftのエラーをキャプチャします。

sentry_flutter | Flutter package
Sentry SDK for Flutter. This package aims to support different Flutter targets by relying on the many platforms supporte...

使い方

sentry.ioでSentryアカウントを作成し、DSNを取得してください。

Sentry SDKを初期化するには、以下のコードを使用します:

import 'package:flutter/widgets.dart';
import 'package:sentry_flutter/sentry_flutter.dart';
Future<void> main() async {
  await SentryFlutter.init(
    (options) {
      options.dsn = 'https://example@sentry.io/add-your-dsn-here';
    },
    // アプリの初期化
    appRunner: () => runApp(MyApp()),
  );
}

Flutter 3.3未満の場合は、独自のエラーゾーンでアプリを実行する必要があります:

import 'dart:async';
import 'package:flutter/widgets.dart';
import 'package:sentry_flutter/sentry_flutter.dart';
Future<void> main() async {
  runZonedGuarded(() async {
    await SentryFlutter.init(
      (options) {
        options.dsn = 'https://example@sentry.io/add-your-dsn-here';
      },
    );
    runApp(MyApp());
  }, (exception, stackTrace) async {
    await Sentry.captureException(exception, stackTrace: stackTrace);
  });
}

ナビゲーションイベントをトラッキングするには、MaterialApp、WidgetsApp、またはCupertinoAppにSentryNavigatorObserverを追加してください:

import 'package:flutter/material.dart';
import 'package:sentry_flutter/sentry_flutter.dart';
MaterialApp(
  navigatorObservers: [
    SentryNavigatorObserver(),
  ],
  // 他のパラメータ
)

AssetBundlesのパフォーマンストレースを追加するには、以下のようにします:

runApp(
  DefaultAssetBundle(
    bundle: SentryAssetBundle(),
    child: MyApp(),
  ),
);

Buy me a coffee!

Flutterアプリ開発
シェアする
sogaをフォローする
タイトルとURLをコピーしました