Flutter In-App Feedback & Bug Report

By Vishal Zaveri
Dot
September 26, 2025
A developer examining a mobile screen with bug and error alert icons against a dark blue background, with the title text "Flutter In-App Feedback & Bug Report"

User feedback is the backbone of app improvement. But the way we ask for feedback makes all the difference. Badly timed popups often get dismissed, while smart, well-integrated flows lead to higher ratings and actionable insights. AppRemark is an in-app bug reporting tool that captures screenshots (shake to capture), allows annotation, and submits contextual feedback/bug reports to your AppsOnAir dashboard. It is not a store-rating / review prompt service

‍

This guide shows how to integrate AppRemark by AppsOnAir in Flutter to collect user feedback and bug reports and suggestions efficiently.

‍

Why Ratings & Feedback Matter?

‍

  • App Store visibility: Higher ratings improve app ranking and discoverability.
  • User trust: New users rely heavily on reviews before installing.
  • Product improvement: Structured feedback highlights bugs and feature requests.
  • Retention: Listening to users increases loyalty and reduces churn.

‍

What AppRemark provides (key facts)

‍

  • Shake-to-capture current screen (can be disabled). Dart packages
  • Annotatable screenshot + customizable “Add Remark” screen.
  • Manual invoke option (open the remark screen programmatically).
  • Accepts extra metadata (you can attach userId, build info, etc.).
  • The Flutter SDK is distributed as appsonair_flutter_appremark 

‍

‍

‍

Quick Integration

‍

Step 1: Add Dependency

‍

Use the package appsonair_flutter_appremark

‍

flutter pub add appsonair_flutter_appremark

‍

Or add to pubspec.yaml:

‍

dependencies:
  appsonair_flutter_appremark: ^0.2.4

‍

Step 2: Basic AppsOnAirAppID Setup

‍

Go to App Settings in the AppsOnAir web portal and copy the AppsOnAirAppId

‍

For iOS, add AppsonairAppId in Info.plist file and add Photo permission too.

‍

<key>AppsonairAppId</key>
<string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>

‍

For Android, add AppsonairAppId in the AndroidManifest file

‍

<application>
    ...
    <meta-data
        android:name="AppsonairAppId"
        android:value="********-****-****-****-************" />
</application>

‍

Set up AppsonairAppId for your mobile app, for more details refer to this documentation.

‍

Step 3: Basic AppsOnAir Setup

‍

Initialize SDK:Call initialization early. The package examples show initializing after a short delay to let the app finish launching:

‍

@override
void initState() {
  super.initState();
  Future.delayed(const Duration(milliseconds: 100), () async {
    await AppRemarkService.initialize(context);
  });
}

‍

This registers the shake gesture (enabled by default) and reads the “Add Remark” screen.

‍

Step 4: Manual Trigger / Disable Shake (Optional)

‍

Manually open the remark screen:

‍

AppRemarkService.addRemark(context);

‍

Use a manual trigger to display the feedback flow after a specific event.

‍

Disable auto shake capture at init:

‍

AppRemarkService.initialize(context,shakeGestureEnable: false);

‍

Step 5: Add Extra metadata (Optional)

‍

Attach identifying or debugging metadata (user id, email, app build, server id) so each report is actionable:

‍

await AppRemarkService.setAdditionalMetaData(extraPayload: {
  "userName": "alice",
  "userId": "1234",
  "appBuild": "1.2.3+45",
});

‍

This metadata is saved with the submitted AppRemark. You can access from the AppsOnAir AppRemark web portal.

‍

Step 6: Theming (Optional)

‍

You can pass an options map during initialize to control visual text/colors and small UI behavior (keys like pageBackgroundColor, appBarTitleText, descriptionMaxLength, etc.). For more information, please refer to Flutter AppRemark documentation.

‍

Best Practices & Implementation Notes 

‍

  • annotations, logs), not to prompt users to rate your app on the app store. (Use a separate rating strategy or store APIs if you need that.)
  • Attach useful metadata (user id, session id, OS version, build number). Use setAdditionalMetaData.
  • Control frequency - if using shake-to-capture, provide an in-app "Report a Problem" button to avoid accidental captures. 
  • Privacy & permissions - iOS requires photo usage string if gallery use is allowed; ensure you comply with user privacy policies. 
  • Beta note: AppRemark was published as public beta - expect minor changes as the SDK evolves. Test before wide rollout. 

‍

What You’ll get 

‍

  • Contextual bug reports with annotated screenshots. faster repro and fewer back-and-forths with users.
  • Centralized feedback/bug collection in the AppsOnAir dashboard for easier triage.

‍

References

‍

Product Overview

Mobile Quickstart

appsonair_flutter_appremark 

FAQ’s

No items found.

Actionable Insights,
Straight to Your Inbox

Subscribe to our newsletter to get useful tutorials , webinars,use cases, and step-by-step guides from industry experts

Start Pushing Real-Time App Updates Today
Try AppsOnAir for Free
Stay Uptodate