我在Android市场上有一个报告无法比较的应用程序,因此不能安装在三星Galaxy Mini上。开发者控制台说这是由于我的清单设置。
我的清单非常清晰:Android 1.5或更高版本以及裸机权限,所以我很惊讶这就是问题所在。
我的问题分为两部分:
是否有任何工具可帮助诊断设备和应用兼容性。
我的清单有什么问题?
这是我的清单
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.basl.bugsy.free"
android:versionCode="8"
android:versionName="8"
installLocation="preferExternal">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".BugsyFreeGame"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="3" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
</manifest>
答案 0 :(得分:3)
是否有任何工具可帮助诊断设备和应用程序的兼容性。
试试MOTODEV's App Validator。他们不会告诉你三星Galaxy Mini会出现问题,但如果你的Mini问题也会导致一些摩托罗拉设备出现问题,那么它告诉你的错误可能有助于清除它。
我的清单有什么问题?
三星Galaxy Mini可能被视为小屏幕设备。尝试添加<supports-screens>
元素,明确声明您支持的屏幕尺寸,包括小屏幕。
另外,请认真重新考虑您的<uses-sdk>
元素,尤其是您选择的android:targetSdkVersion
元素。您的应用程序在Android 3.0+设备上看起来会过时,而且已经有超过Android 1.5(a.k.a.,API Level 3)设备的应用程序。如果您将android:targetSdkVersion
设置为11
或更高,您的应用仍将在较旧的设备上运行,但您将采用Honeycomb外观(小部件,操作栏等的全息主题),这将使您的应用看起来像属于较新的设备。
答案 1 :(得分:1)
我最近遇到了一个强烈的问题:三星Galaxy Mini 和三星Galaxy Ace
我关注了这个帖子中的所有帖子,非常有趣。它解决了一些问题,但这两个设备却没有运气。
最后,我最终取消了一个简单的功能:
<use-feature android:name="android.hardware.camera.autofocus" />
我实际上并没有“真正”需要这个功能。 Paf,我的应用程序在新的更新后立即出现在这两个设备上。 :)
所以...我的建议是:仅在您的应用依赖它时使用use-feature自动对焦