I have an app that I’ve developed and I’m testing it across multiple devices.
The app will not install on a Samsung Galaxy Q (running Froyo with an HVGA 320×480 screen).
The minSdkVersion is 7 so that shouldn’t be the problem. It installs and runs fine on other. larger screen devices.
I have set the AndroidManifest.xml <supports-screens> flag to true for all screen sizes.
The error I’m seeing is “application not installed” when attempting to install the .apk.
It installs fine on the emulator with the same screen resolution and OS version.
Here’s the manifest, please note that because the project is under NDA I’ve replaced identifiable elements with “%%%%”.
AndroidManifest.xml
<manifest android:versionCode="1"
android:versionName="1.0"
package="%%%%"
xmlns:android="http://schemas.android.com/apk/res/android">
<application android:debuggable="false"
android:hardwareAccelerated="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:name="%%%%"
android:theme="@style/Theme.LoadingBackground">
<activity android:label="@string/app_name"
android:name="%%%%" />
<activity android:icon="@drawable/icon"
android:label="@string/app_name"
android:launchMode="singleTask"
android:name="%%%%"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:label="Store Front Widget"
android:name="%%%%"
android:screenOrientation="portrait"
android:taskAffinity="%%%%">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
<receiver android:label="%%%%"
android:name="%%%%">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>
<meta-data android:name="android.appwidget.provider"
android:resource="@xml/widget_provider" />
</receiver>
<receiver android:name="%%%%" />
<service android:name="c%%%%" />
<service android:name="%%%%">
<intent-filter>
<action android:name="%%%%" />
</intent-filter>
</service>
<service android:name="%%%%">
<intent-filter>
<action android:name="%%%%" />
</intent-filter>
</service>
<uses-library android:name="com.google.android.maps" />
</application>
<supports-screens android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-sdk android:minSdkVersion="7"
android:targetSdkVersion="7" />
</manifest>
What kind of app you made?
If you are using camera resource in your app, then you must check your preview frame size.