Home Features Getting Started Pricing Dictionaries Feedback
Pro Feature

Release Readiness

A comprehensive 13-point pre-release checklist that catches misconfigurations, security issues, and policy violations before your app reaches the Play Store.

Introduction

Release Readiness is a 13-point automated pre-release checklist that verifies your app is ready for production deployment. Each check inspects your project configuration, manifest, build outputs, and dependencies to produce a clear pass/fail result with actionable details.

Instead of relying on manual checklists that get skipped under deadline pressure, Release Readiness runs all 13 checks in a single pass and presents a consolidated report. It catches the misconfigurations, security issues, and policy violations that commonly slip through before a release reaches the Play Store.


Why Use Release Readiness?

Pre-release mistakes are costly — they reach production users before you can react. Here are the problems that Release Readiness solves:


Features

Release Readiness runs 13 automated checks, each targeting a specific aspect of release configuration:

1. Debuggable Flag Check

Verifies that android:debuggable is set to false in the release build. Also scans for BuildConfig.DEBUG usage that may inadvertently enable debug behavior in production.

2. MinifyEnabled Verification

Confirms that code shrinking (R8/ProGuard) is enabled via minifyEnabled true for the release build type, along with resource shrinking (shrinkResources true) status.

3. API Key Exposure Scan

Scans source code and resource files for hardcoded API keys, secrets, and tokens using pattern matching. Detects common patterns for Google Maps keys, Firebase config values, AWS credentials, and third-party SDK tokens.

4. SDK Version Compliance

Validates that targetSdkVersion meets current Google Play requirements and that compileSdkVersion is sufficient for the libraries in use. Flags deprecated API usage.

5. Signing Configuration

Ensures the release build is signed with a proper release keystore — not the debug keystore. Checks for v2 or v3 APK Signature Scheme (required for Play App Signing) and keystore certificate validity.

6. ProGuard Rules Review

Verifies that ProGuard/R8 rules files exist and are properly referenced. Flags missing -keep rules for reflection-heavy libraries and overly broad wildcard rules.

7. Version Code and Name

Checks that versionCode is incremented compared to the last known release and that versionName follows semantic versioning conventions.

8. Target SDK Version

Goes beyond basic SDK compliance by checking runtime permission behavior changes, background execution limits, and platform-level requirements introduced in recent Android versions.

9. Permissions Review

Lists all declared permissions and highlights sensitive ones (location, camera, microphone, contacts, phone state). Flags permissions that lack corresponding runtime request code and detects unused permissions.

10. Test Coverage

Checks for the presence of test source sets and optionally runs unit tests to verify they pass. Reports whether tests exist, whether they pass, and the last execution timestamp.

11. Resource Optimization

Verifies that resource shrinking is enabled, checks for unused resources, and flags large image assets that could benefit from WebP conversion or vector drawable replacement.

12. Manifest Checks

Validates critical manifest attributes: android:allowBackup, android:usesCleartextTraffic, android:exported on all components (required on Android 12+), and android:networkSecurityConfig presence.

13. Dependency Audit

Scans the dependency tree for known vulnerabilities using public CVE databases. Flags outdated dependencies with available security patches, snapshot versions, and conflicting transitive dependencies.

Check Status Types

Each check produces one of five status levels: PASS for checks that passed cleanly, INFO for informational notes that require no action, WARNING for items that are not blocking but should be reviewed (e.g., permissions that are declared but never requested at runtime), FAIL for critical issues that must be resolved before release, and SKIP for checks that could not be evaluated (e.g., no test source set found, or no Git history available). The overall readiness score counts only PASS checks, making it easy to see at a glance whether your build is ready to ship.

Check History

Release Readiness results are persisted between scans, so you can compare readiness across builds and track improvements over time. The history view shows a timeline of past scans with pass/fail/warning counts for each. This is especially useful during release cycles — you can verify that the number of warnings is decreasing with each build and that no new failures have been introduced by recent changes.

Release Readiness — scan results
Release Readiness Report — app-release v2.4.1
Score: 11 / 13 passed

[PASS] Debuggable flag is false
[PASS] minifyEnabled is true
[PASS] No hardcoded API keys detected
[PASS] targetSdkVersion 35 meets Play requirement
[PASS] Signed with release keystore (v2 + v3)
[PASS] ProGuard rules present and referenced
[PASS] versionCode incremented (24100 > 24000)
[PASS] Target SDK behavioral changes handled
[FAIL] 3 permissions lack runtime request code
[PASS] Unit tests present and passing (342 tests)
[PASS] Resource shrinking enabled
[FAIL] android:exported missing on 2 activities (Android 12+)
[PASS] No known CVEs in dependency tree

Getting Started

Run the Release Readiness check from any of these entry points:

Interpreting results:

  1. Review the overall score at the top of the report (e.g., 11 / 13 passed).
  2. Each item shows a green [PASS] or red [FAIL] indicator with a description.
  3. Click on any failed item to navigate directly to the source location in your editor.
  4. Each failed item includes a description of the issue, the affected file or configuration, and a suggested fix.

Additional configuration is available at Settings > Tools > ADB Pro > Release Readiness, where you can:


Verification

After running the Release Readiness check, confirm that your project is truly release-ready:


References

Official documentation for preparing and publishing Android apps:

Ship with Confidence

Install ADB Pro and catch release-blocking issues before they reach the Play Store.

Get ADB Pro