Short answer
Upload the release build, not a debug or staging one. Remove android:debuggable="true" from AndroidManifest.xml if it is there, and in Gradle set isDebuggable = false on any build type you ship, including ones made with initWith(debug). Check the merged manifest of the bundle with bundletool before you upload.
Rather not fix it yourself? App Fix Ticket starts with a fixed-price diagnosis, then a fixed price for the fix before any fix work.
Why the bundle is debuggable, and the fix
01
A debug build was uploaded
“Although the debug build type doesn't appear in the build configuration file, Android Studio configures it with debuggable true.” Android Developers, Configure build variants
The debug build type turns debugging on without a line in your Gradle file. Build the release variant: flutter build appbundle, ./gradlew bundleRelease, or Build > Generate Signed App Bundle in Android Studio.
02
A staging build type copies debug
“lets you copy configurations from other build types, then configure only the settings you want to change.” Android Developers, Configure build variants
A build type made with initWith(debug) copies its settings, debuggable included. If you ship that build, turn debugging off on it.
// android/app/build.gradle.kts android { buildTypes { create("staging") { initWith(getByName("debug")) isDebuggable = false signingConfig = signingConfigs.getByName("release") } } }03
The manifest sets it by hand
“Whether the application can be debugged, even when running on a device in user mode.” Android Developers, <application> (android:debuggable)
An android:debuggable="true" line on the application tag, often left from an old tutorial, can mark builds as debuggable, and Android lint warns against it. Delete it and let the build type decide. In Expo or React Native, check that you uploaded a production build, not a development or preview one.
04
Check the bundle before you upload
bundletool prints the final manifest of the bundle. If the search finds debuggable set to true, the upload will fail again. No output means it is off.
# Flutter: build/app/outputs/bundle/release/app-release.aab # Gradle: app/build/outputs/bundle/release/app-release.aab java -jar bundletool.jar dump manifest --bundle=app-release.aab | grep -i debuggable
Checked against the vendor’s docs on : Android Developers: Configure build variants; Android Developers: <application> element.
Rather hand it over?
Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.
“Very responsive, attentive to fixing bugs, and completed the project as needed! Thank you!”
Related: Google Play bundle signed in debug mode · Google Play app bundle signed with the wrong key · Google Play version code already used · Google Play QUERY_ALL_PACKAGES