我有一个应用程序,应该在大量设备上支持,但当我将其上传到Google Play时,它显示仅支持3个(共2263个)。
我的清单如下所示(减去活动):
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="MYPACKAGE"
android:versionCode="101"
android:versionName="@string/app_version" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="15" />
<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" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="com.android.vending.BILLING" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera.any" />
<supports-screens
android:anyDensity="true"
android:largeScreens="false"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="false" />
<application
android:name=".MYApplication"
android:hardwareAccelerated="true"
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:theme="@style/RPTheme" >
ACTIVITY DECLARATIONS ARE HERE
<service android:name="com.parse.PushService" />
<receiver android:name="com.parse.ParseBroadcastReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
<receiver android:name="MYPACKAGE.PushReceiver" >
<intent-filter>
<action android:name="1" />
</intent-filter>
</receiver>
</application>
此外,我还将我的包名替换为MYPACKAGE。
现在我再看一遍,也许这与android:hardwareAccelerated=的“真”有关?但我的理解是,XML声明会被不支持XML声明的API级别忽略。
有谁知道这是怎么回事吗?Play商店还可以在其他地方查找支持哪些设备吗?
谢谢你的帮忙!
编辑:
看起来它确实是android.hardware.camera.any,如下所示。我将其替换为:
<uses-feature
android:name="android.hardware.camera"
android:required="false" />
<uses-feature
android:name="android.hardware.camera.front"
android:required="false" />我的应用程序现在有了支持2k+的设备。
发布于 2012-12-19 07:51:40
尝试注释掉或更改:
<uses-feature android:name="android.hardware.camera.any" />PackageManager was added in Android 4.2中的等效值。this issue说:
但是,Play Store需要新的逻辑来为具有旧版操作系统的设备提供向后兼容性,而旧版操作系统尚未准备就绪。
因此,在支持到位之前,不要使用"android.hardware.camera.any",因为任何需要它的应用程序都还不能在运行4.2之前版本的设备上安装。
这是一个月前写的,您的经验表明它仍然是这样的。
https://stackoverflow.com/questions/13943361
复制相似问题