Search code examples
androidandroid-studioaapt

Android application on Google Play - incompatible with all devices


I trying to find the answer for 2 days on StackOverflow and other services without any luck. I have published an app to Google Play. It's there but it's incompatible with most of the devices. I ran tests on Nexus 7 both using Eclipse and TestFlight to install it and there was no problem. So I'm almost sure it is related to the AndroidManifest.

Here is aapt dump badging result:

Application.apk

package: name='com.test.application' 

versionCode='1' 

versionName='1.0'

sdkVersion:'11'

targetSdkVersion:'19'

uses-permission:'android.permission.WRITE_EXTERNAL_STORAGE'

uses-permission:'android.permission.ACCESS_NETWORK_STATE'

uses-permission:'android.permission.INTERNET'

application-label:'Application'

application-label-da:'Application'

application-label-el:'Application'

application-icon-160:'res/drawable-mdpi/ic_launcher.png'

application-icon-240:'res/drawable-hdpi/ic_launcher.png'

application-icon-320:'res/drawable-xhdpi/ic_launcher.png'

application-icon-480:'res/drawable-xxhdpi/ic_launcher.png'

application: label='Application' icon='res/drawable-mdpi/ic_launcher.png'

application-debuggable

launchable-activity: name='com.test.application.activity.Launcher'  

label='Application' icon=''

uses-permission:'android.permission.READ_EXTERNAL_STORAGE'

uses-implied-permission:'android.permission.READ_EXTERNAL_STORAGE','requested 

WRITE_EXTERNAL_STORAGE'

uses-feature:'android.hardware.touchscreen'

uses-implied-feature:'android.hardware.touchscreen','assumed you require a touch screen 

unless explicitly made optional'

uses-feature:'android.hardware.screen.landscape'

uses-implied-feature:'android.hardware.screen.landscape','one or more activities have 
specified a landscape orientation'

main

other-activities

supports-screens: 'small' 'normal' 'large' 'xlarge'

supports-any-density: 'true'

locales: '--_--' 'da' 'el'

densities: '160' '240' '320' '480'

and here is Manifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.test.application"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="19" />

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.INTERNET"/>

    <application
        android:allowBackup="true"
        android:hardwareAccelerated="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        android:debuggable="false"
        android:name=".ApplicationApplication">
        <activity
            android:name="com.test.application.activity.Launcher"
            android:label="@string/app_name"
            android:screenOrientation="sensorLandscape"
            android:configChanges="orientation|screenSize|keyboardHidden|locale">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.test.application.activity.SomeActivity"
            android:label="@string/app_name"
            android:screenOrientation="sensorLandscape"
            android:windowSoftInputMode="adjustPan"
            android:configChanges="orientation|screenSize|keyboardHidden|locale">
        </activity>
        <activity
            android:name="com.test.application.activity.AnotherActivity"
            android:label="@string/app_name"
            android:screenOrientation="sensorLandscape"
            android:windowSoftInputMode="adjustPan"
            android:configChanges="orientation|screenSize|keyboardHidden|locale">
         </activity>
    </application>

</manifest>

The signed apk was built using Android Studio. What seems suspicious is this "application-debuggable". Do You guys have any clue why on Earth it is incompatible with, let's say Nexus 7?


Solution

  • Ok, after all it turns out that there was no problem at all. Guy responsible for publication process set country restrictions. That's why app was not compatible with all devices in specific country.