instabug_flutter 9.1.0 instabug_flutter: ^9.1.0 copied to clipboard
Instabug is an in-app feedback and bug reporting tool for mobile apps. With just a simple shake, your users or beta testers can report bugs or send in-app feedback and the SDK will capture an enviro [...]
Instabug for Flutter #
A Flutter plugin for Instabug.
Available Features #
Feature | Status |
---|---|
Bug Reporting | ✅ |
Crash Reporting | ⚠ |
In-App Chat | ✅ |
In-App Surveys | ✅ |
Feature Requests | ✅ |
- ✅ Stable
- ⚙️ Under active development
- ⚠ Not available yet
Integration #
Installation #
- Add Instabug to your
pubspec.yaml
file.
dependencies:
instabug_flutter:
- Install the package by running the following command.
flutter packages get
Using Instabug #
- To start using Instabug, import it into your Flutter app.
import 'package:instabug_flutter/Instabug.dart';
- Initialize the SDK in
initState()
. This line enables the SDK with the default behavior and sets it to be shown when the device is shaken. Ignore this if you're building for Android only.
Instabug.start('APP_TOKEN', [InvocationEvent.shake]);
- Add the following Maven repository to your project level
build.gradle
allprojects {
repositories {
maven {
url "https://sdks.instabug.com/nexus/repository/instabug-cp"
}
}
}
Make sure to replace app_token
with your application token.
- If your app supports Android, create a new Java class that extends
FlutterApplication
and add it to yourAndroidManifest.xml
.
<application
android:name=".CustomFlutterApplication"
...
</application>
- In your newly created
CustomFlutterApplication
class, overrideonCreate()
and add the following code.
ArrayList<String> invocationEvents = new ArrayList<>();
invocationEvents.add(InstabugFlutterPlugin.INVOCATION_EVENT_SHAKE);
new InstabugFlutterPlugin().start(CustomFlutterApplication.this, "APP_TOKEN", invocationEvents);
Microphone and Photo Library Usage Description (iOS Only) #
Instabug needs access to the microphone and photo library to be able to let users add audio and video attachments. Starting from iOS 10, apps that don’t provide a usage description for those 2 permissions would be rejected when submitted to the App Store.
For your app not to be rejected, you’ll need to add the following 2 keys to your app’s info.plist file with text explaining to the user why those permissions are needed:
NSMicrophoneUsageDescription
NSPhotoLibraryUsageDescription
If your app doesn’t already access the microphone or photo library, we recommend using a usage description like:
- "
<app name>
needs access to the microphone to be able to attach voice notes." - "
<app name>
needs access to your photo library for you to be able to attach images."
The permission alert for accessing the microphone/photo library will NOT appear unless users attempt to attach a voice note/photo while using Instabug.
Network Logging #
You can choose to attach all your network requests to the reports being sent to the dashboard. To enable the feature when using the dart:io
package HttpClient
, use the custom Instabug client:
InstabugCustomHttpClient client = InstabugCustomHttpClient();
and continue to use the package normally to make your network requests:
client.getUrl(Uri.parse(URL)).then((request) async {
var response = await request.close();
});
We also support the packages http
and dio
. For details on how to enable network logging for these external packages, refer to the Instabug Dart Http Adapter and the Instabug Dio Interceptor repositories.