我开发了Android应用程序,无法从Market下载到Android ICS设备。使用4.x设备浏览市场时,人们会看到“不兼容的警告”,无法继续下载。该应用的minSdkVersion设置为7.它适用于2.x和3.x Android设备。 我不知道该怎么办以及如何解决这个问题。我是否需要设置任何特殊的东西才能与ICS兼容?我找不到关于这个主题的任何信息。
更新:我刚刚收到确认,手动安装APK适用于4.0设备。它只是不会通过市场安装!同样,它在市场上显示为“与您的设备不兼容”。有什么想法吗?
的AndroidManifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="nl.tmd.natuurijs"
android:versionCode="7" android:versionName="1.1.3">
<uses-sdk android:minSdkVersion="7" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application android:name=".NatuurijsApplication"
android:icon="@drawable/icon" android:label="@string/app_name">
<uses-library android:name="com.google.android.maps" android:required="false"/>
<!-- Main Activity -->
<activity android:name=".MainActivity" android:label="@string/app_name"
android:theme="@style/NatuurijsTheme" android:launchMode="singleTask" android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="natuurijs" android:host="main" />
</intent-filter>
</activity>
<!-- Map Activity -->
<activity android:name=".NatuurijsMapActivity" android:label="@string/app_name"
android:theme="@style/NatuurijsTheme" />
<!-- Map Activity -->
<activity android:name=".NatuurijsAddVenueActivity" android:label="@string/app_name"
android:windowSoftInputMode="adjustPan" android:theme="@style/NatuurijsTheme">
</activity>
<!-- Locations list Activity -->
<activity android:name=".NatuurijsLocationsActivity" android:label="@string/app_name"
android:theme="@style/NatuurijsTheme">
</activity>
<!-- Location details Activity -->
<activity android:name=".NatuurijsLocationDetailsActivity" android:label="@string/app_name"
android:theme="@style/NatuurijsTheme">
</activity>
<!-- Select a location by hand -->
<activity android:name=".SelectLocationActivity" android:label="@string/app_name"
android:theme="@style/NatuurijsTheme">
</activity>
<!-- Info Activity-->
<activity android:name=".InfoActivity" android:label="@string/app_name"
android:theme="@style/NatuurijsTheme">
</activity>
</application>
</manifest>
这可能是主题吗?主题并不特别。它只是继承自Theme.Black.NoTitleBar
<style name="NatuurijsTheme" parent="android:Theme.Black.NoTitleBar"></style>
答案 0 :(得分:6)
您的应用是否在Play商店发布部分的“发布选项”下受到版权保护?资料来源:My Android App shows as "this item is not compatible with your device"
答案 1 :(得分:3)
我的应用程序收到类似的投诉。我注意到我的应用程序的一件事是我使用的是Tab活动,现在已经在Android 4.0+中弃用了。 (如果您使用TabActivity / TabHost这是一个问题,没有硬菜单键的手机将无法使用选项菜单。)我用正常的应用程序导航按钮替换了我的标签,我相信这可能已经解决了我的ICS兼容性问题
另外,我尝试更新我的清单android:minSdkVersion和ADDED android:targetSdkVersion,但我不确定那些是否实际修复了什么。
注意:如果您需要帮助查找已弃用的代码,请尝试通过更改项目属性告诉Eclipse将已弃用的功能显示为错误。
编辑:
更多信息:显然我仍然遇到一些ICS兼容性问题,所以上面不是我需要解决的唯一问题。还是不确定我还能做些什么。我在研究中发现的一件事是,显然拥有自定义ROMS的人有时会出现“不正确的XML值”,这使得Google Play商店说它们不兼容。也许通过网络版Google Play下载并要求用户从那里远程安装可能会解决我们的问题。
编辑2:
您的应用不应再使用Google Play商店发布部分中“发布选项”下的版权保护。
答案 2 :(得分:2)
OEM正在使用的Android设备的构建很可能在某个地方的xml文件中有不好的价值,这对于在ICS上播放来说并不是一个闻所未闻的问题。
答案 3 :(得分:2)
除了Deadeye所说的,我的猜测是由于缺乏屏幕支持(4.X.X设备往往有大屏幕或xlargeScreens)。
您至少需要编译到2.3.3并添加到清单:
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="true" />
我认为这可以解决您的问题。
答案 4 :(得分:2)
尝试清单
<uses-sdk
android:minSdkVersion="7"
android:targetSdkVersion="14" />
即使这不能解决您的问题,强烈建议,因为它将在3.0+设备上启用硬件加速,它将隐藏底部系统栏中不需要的“菜单”屏幕按钮(在屏幕上显示的设备上,家庭等按钮),它允许Android开发工具检测代码中Android版本之间的兼容性问题。 你有没有尝试更新你的android sdk和ide插件?