0

I have developed an app that only runs on the Nexus 7 (for now) and cannot seem to figure out which combination of parameters are required to get note only the Nexus 7 but ANY device supported by Google Play.

I have only tested with a USB connected physical Nexus 7 and it works fine in both portrait and landscape modes.

I have included only the last attempt of the Android Manifest XML.

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

    <uses-sdk
        android:minSdkVersion="17"
        android:targetSdkVersion="18" />

    <supports-screens 
        android:anyDensity="true"
        android:normalScreens="true"
        android:largeScreens="true" 
        android:xlargeScreens="true" >
    </supports-screens> 


    <uses-feature android:name="android:glEsVersion=0x00020000"
                  android:required="true" />

    <uses-feature android:name="android.hardware.camera" android:required="false" />

    <application
        android:allowBackup="true"
        android:hardwareAccelerated="true"
        android:icon="@drawable/ow_icon"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.xxx.xxx.MainActivity"
            android:configChanges="orientation|screenSize"
            android:clearTaskOnLaunch="true"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Any help would be greatly appreciated.

  • Did you look at [this](http://developer.android.com/guide/practices/screens_support.html) ? – developeralways Aug 09 '13 at 20:12
  • Thanks for taking time to read this post. A friend told me to remove the android:glEsVersion to see what happens. Well, it fixed the problem. Since the android:minSdkVersion=17 implies OpenGL 2.0, I'm guessing that the android:glEsVersion is not needed now. – user2588157 Aug 13 '13 at 13:50

2 Answers2

2

Well your minsdkversion is 17, corresponding to android 4.2+. That's currently run on only a small fraction of devices!

Aert
  • 1,989
  • 2
  • 15
  • 17
0

After removing the following code from the Manifest

 <uses-feature android:name="android:glEsVersion=0x00020000"
              android:required="true" />

I then had thousands of devices supported. Since I only wanted the Nexus 7 (my original issue), I changed the "supports-screens" section and added the "uses-feature" line to the Manifest.

<supports-screens
    android:smallScreens="false"
    android:normalScreens="false"
    android:largeScreens="true"
    android:xlargeScreens="true" >
</supports-screens>

<uses-feature android:name="android.hardware.telephony" android:required="false" />

The above changes allowed my app to run on 7" and 10" devices.