android: why is my app “not available” for my 2.3.3 device (in the market)

半腔热情 提交于 2019-12-12 10:03:40

问题


Yesterday I released my app and realised that it is not available for my android 2.3.3 device. (Does not get listet in search results, and when I access the app page directly, android market tells me that it is not available for my device).

The lines of my manifest, which could be the issue (IMO) look like that:

<uses-sdk
    android:minSdkVersion="7"
    android:targetSdkVersion="8" />

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

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

The only thing I can think of which could make a difference is that I have no SIM card inserted on that phone- but I have Wifi access. (will try it with SIM card in the evening)

Any ideas?


回答1:


Application requires autofocus camera unless you add `android:required="false" to the use-feature tag.

From documentation, see last if statement:

Filtering based on explicitly declared features

An explicitly declared feature is one that your application declares in a element. The feature declaration can include an android:required=["true" | "false"] attribute (if you are compiling against API level 5 or higher), which lets you specify whether the application absolutely requires the feature and cannot function properly without it ("true"), or whether the application prefers to use the feature if available, but is designed to run without it ("false").

Android Market handles explicitly declared features in this way:

If a feature is explicitly declared as being required, Android Market adds the feature to the list of required features for the application. It then filters the application from users on devices that do not provide that feature. For example:

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

If a feature is explicitly declared as not being required, Android Market does not add the feature to the list of required features. For that reason, an explicitly declared non-required feature is never considered when filtering the application. Even if the device does not provide the declared feature, Android Market will still consider the application compatible with the device and will show it to the user, unless other filtering rules apply. For example:

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

If a feature is explicitly declared, but without an android:required attribute, Android Market assumes that the feature is required and sets up filtering on it.



回答2:


The minSdkVersion="7" and targetSdkVersion="8" but you device is 2.3.3 which equal sdk version 10

This will help you to know the sdk versions

so change the versions range in your manafist file

 <uses-sdk android:targetSdkVersion="8"  android:minSdkVersion="7" android:maxSdkVersion="10" />


来源:https://stackoverflow.com/questions/8893860/android-why-is-my-app-not-available-for-my-2-3-3-device-in-the-market

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!