Google Play上架应用无法在多设备兼容的技术求助
Let’s dive into why your app is showing as "not supported" on devices, even after passing Google Play review—there are a couple of critical issues in your build configuration that stand out immediately, plus a minor tweak to your manifest to improve compatibility.
1. Release Build Configuration Has Fatal Packaging Errors
Your build.gradle release block includes two mistakes that break core APK functionality, which Google Play uses to determine device compatibility:
- You’re excluding mandatory APK files: The
packagingOptionsrule excludingAndroidManifest.xmlandresources.arscis catastrophic. These files are essential:AndroidManifest.xmltells Google Play (and Android devices) your app’s permissions, required hardware features, and component structure. Without it, the store can’t properly assess which devices can run your app.resources.arscindexes your app’s resources; missing this will not only break app functionality but also confuse compatibility checks.
- ZIP alignment is disabled:
zipAlignEnabled falseviolates Google Play’s requirements. Aligning your APK optimizes memory usage and ensures the store/device recognizes the app as valid. Unaligned APKs often cause unexpected compatibility flags.
Fix for Build Configuration
Update your release build block to remove these problematic settings:
release { // DELETE the entire packagingOptions block below // packagingOptions { // exclude 'AndroidManifest.xml' // exclude 'resources.arsc' // } minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' debuggable false jniDebuggable false renderscriptDebuggable false zipAlignEnabled true // Re-enable this (required for Google Play) signingConfig signingConfigs.release }
2. Outdated Camera Feature Declaration
Your manifest uses the old camera feature tag <uses-feature android:name="android.hardware.Camera" android:required="true" />, which targets the legacy Camera API. Modern devices use the Camera2 API, and some devices only have a front-facing camera (still perfectly usable for your app’s barcode/OCR features). Google Play will filter out these devices even though they have a working camera.
Fix for Manifest
Replace the old camera feature tag with the universal camera attribute that covers all devices with any camera:
<uses-feature android:name="android.hardware.camera.any" android:required="true" />
Note: Declaring the CAMERA permission already implicitly requires a camera, but explicitly using camera.any ensures broader compatibility coverage.
3. Post-Fix Steps to Verify Compatibility
After fixing the above issues:
- Rebuild a signed release APK.
- Upload the new APK to Google Play Console (either to Production or Internal Testing for faster validation).
- Wait 1-2 hours for Google Play to reprocess the app’s compatibility data.
- Ask your friends/family to check the Play Store again—they should now see the app as available.
- You can also verify supported devices in the Device Catalog tab of Google Play Console to confirm your target devices are now included.
Quick Check
Double-check that none of your test devices are running Android versions older than your minSdkVersion 27 (Android 8.1). If any device is on an older OS, it will still show as unsupported—this is expected behavior.
内容的提问来源于stack exchange,提问作者Timos Komni

