flutter_bugfender 5.0.0
flutter_bugfender: ^5.0.0 copied to clipboard
Flutter plugin to enable Bugfender reporting (iOS, Android and web support).
flutter_bugfender #
A Bugfender Wrapper plugin (implementing native code) for Flutter Projects.
Note: This plugin was provided by the community, hence it is published "AS IS", our support might not always be able to help you.
Using the package #
Edit pubspec.yaml and add add flutter_bugfender to dependencies:
dependencies:
flutter:
sdk: flutter
flutter_bugfender: ^5.0.0
Then run flutter pub get (or ‘Packages Get’ in IntelliJ) to download the package.
Edit lib/main.dart and add an import:
import 'package:flutter_bugfender/flutter_bugfender.dart';
And wrap your runApp statement like this:
void main() {
FlutterBugfender.handleUncaughtErrors(() async {
await FlutterBugfender.init("YOUR_APP_KEY",
enableCrashReporting: true, // these are optional, but recommended
enableUIEventLogging: true,
enableAndroidLogcatLogging: true);
FlutterBugfender.log("hello world!");
// Optional: capture network requests (disabled by default)
await FlutterBugfender.setNetworkLoggingEnabled(true);
await FlutterBugfender.setNetworkLoggingRequestObfuscationHandler(
(url, headers, body) {
final safeHeaders = Map<String, String>.from(headers);
if (safeHeaders.containsKey('Authorization')) {
safeHeaders['Authorization'] = '***';
}
return NetworkRequestData(url: url, headers: safeHeaders, body: body);
},
);
runApp(new MyApp());
});
}
Network logging notes:
- Web: intercepts
fetchandXMLHttpRequest. - iOS: captures
URLSessiontraffic. - Android: enable via the API above; OkHttp/Ktor apps also need the Bugfender interceptor/plugin (
android-okhttp/android-ktor). See the Android docs. - Use
setNetworkLoggingRequestObfuscationHandler/setNetworkLoggingResponseObfuscationHandlerto redact sensitive headers or bodies before they are logged.
Documentation #
For information on how to use our SDK, you can check the documentation to configure your project.