11

我们有一个 android 应用程序,它的 manifest 设置了以下配置:

minsdkVersion = "4"

<supports-screens 
                  android:normalScreens="true"
                  android:largeScreens="true"
                  android:anyDensity="false" />

但是,当使用摩托罗拉 XOOM 设备的用户浏览 Android Market 时,他不会显示我们的应用程序。

为什么会这样?

4

5 回答 5

24

我遇到过同样的问题。除了包括在内,android:xlargeScreens="true"我发现这是解决方法。

Android Market 将请求类似 CALL_PHONE 的权限视为也请求:

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

XOOM 没有电话功能——这是第一款符合 Android Market 标准的设备。虽然它可以有数据计划,但它没有语音或 SMS 功能,因此它被视为没有 android.hardware.telephony。但是,如果您请求诸如 CALL_PHONE 之类的权限,Android Market 默认会假定您需要 android.hardware.telephony。因此,您将被排除在 XOOM 市场之外。

解决方案很简单:对于权限可能暗示但您并非绝对需要的任何硬件功能,使用 android:required="false" 手动将适当的元素添加到您的清单中:

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

来自此博客: CommonsBlog - XOOM、权限和 Android 市场

于 2011-03-14T18:19:01.990 回答
2

您是否打开了复制保护?我有类似的问题,一些 Xooms 可以看到我的应用程序,但有些不能。显然,打开复制保护(在上传后的应用程序设置中)可以阻止某些设备查看/下载应用程序。如果这是导致问题的原因,只需关闭复制保护即可解决问题。Google 建议您改用许可服务来保护您的应用程序:http: //developer.android.com/guide/publishing/licensing.html

于 2011-06-24T00:52:27.420 回答
1

Do you request any telephony permissions in your app, e.g. READ_SMS or CALL_PHONE? If so, then the Market will infer that telephony support is required, which means it won't be available for the Xoom.

If this is the case, then you need to update your AndroidManifest.xml to make the telephony features optional:

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

You'll also need to make sure your app copes gracefully when the telephony features aren't present!

See my answer here for more detail on how to check what devices the Market is offering your app on.

The android:xlargeScreens="true" permission is not required, unless you've explicitly included the [supports-screens][2] in your AndroidManifest.xml (which you shouldn't, as the default will make it available on all screen sizes).

于 2011-12-13T20:27:37.337 回答
1

记住!

<uses-sdk android:minSdkVersion="X" android:targetSdkVersion="11" />

targetSdkVersion 会照顾你;)

于 2011-02-25T18:20:12.823 回答
1

The XOOM has an extra large screen so you need android:xlargeScreens="true" in your manifest.

Edit: Seems like this defaults to true. See my comment below.

于 2011-02-25T13:17:41.103 回答