Easily collect in-app feedback in your Android application in just a few steps.
By the end of this guide, you’ll have:
com.yourcompany.yourapp
Rating
, Free Text
, or Rating & Text
💡 Important: Use the actual Android package name (from your build.gradle file)
Click “Create”
⚠️ Note: Only one active form is allowed per package. Creating a new form deactivates the previous one.
Your form is now live! The SDK will automatically fetch and display it in your app.
Add the SDK to your Android app in a few lines of code.
settings.gradle.kts
:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add the SDK dependency - Current tag version:
Option A - Directly in build.gradle.kts
:
dependencies {
implementation("com.github.AvitalShmueli:InAppFeedbackSDK:Tag")
}
Option B - using libs.versions.toml:
[versions]
inappfeedbacksdk = "Tag"
[libraries]
inappfeedbacksdk = { module = "com.github.AvitalShmueli:InAppFeedbackSDK", version.ref = "inappfeedbacksdk" }
Then in your module build file:
dependencies {
implementation(libs.inappfeedbacksdk)
}
Sync Your Project
AndroidManifest.xml
:
<uses-permission android:name="android.permission.INTERNET" />
Activity
or Fragment
, use the following to fetch and show the form:
FeedbackFormManager manager = FeedbackFormManager.getInstance(context);
manager.getActiveFeedbackForm(context, fragmentManager, new FeedbackFormManager.FeedbackFormCallback<FeedbackForm>() {
@Override
public void ready(FeedbackForm form) {
// The feedback dialog is shown automatically
}
@Override
public void failed(String errorMsg) {
Log.e("FeedbackSDK", "Form load failed: " + errorMsg);
}
});
manager.setUserId("user_1234");
Use this to associate feedback with specific users (e.g., logged-in accounts).
Let’s test the flow!
"Testing the feedback system!"
Now that your feedback system is live, here are some ways to take it further:
Customize when the dialog appears Trigger the feedback dialog after meaningful actions (e.g., purchases, feature use, level completion).
💡 Ask at natural break points to avoid interrupting users.
Collect analytics on submission events Track when feedback is shown, skipped, or submitted. Use this data to improve timing and targeting.
Style the dialog Customize the look and feel to match your app’s branding.
Monitor trends in the portal Analyze ratings, user messages, and submission frequency over time.
💡 Don’t just collect - act on insights and close the loop with users where possible.
Limit over-prompting Prompt users sparingly to prevent fatigue. Once every few sessions is often enough.