Android manifest Android应用程序在1.5及以下版本中未上市;1.6设备,蓝牙是安卓系统:必需=";假;

Android manifest Android应用程序在1.5及以下版本中未上市;1.6设备,蓝牙是安卓系统:必需=";假;,android-manifest,google-play,android-market-filtering,Android Manifest,Google Play,Android Market Filtering,我们的Android应用程序现在可以使用蓝牙(如果可用),但这不是必需的。 因此,我在清单中添加了以下行: <uses-permission android:name="android.permission.BLUETOOTH" android:required="false" /> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:required="false"/>

我们的Android应用程序现在可以使用蓝牙(如果可用),但这不是必需的。
因此,我在清单中添加了以下行:

<uses-permission android:name="android.permission.BLUETOOTH" android:required="false" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:required="false"/>

问题:发布后,大多数人都可以下载该应用程序,但该应用程序不会在市场上出现:

  • 安卓1.5 HTC魔术
  • 安卓1.6G1
我应该做些什么改变,以使其与这些设备一起出现在市场上

请注意,我们允许SDK级别3,其中包括Android 1.5:

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

该应用程序的早期版本没有任何蓝牙支持,它正在每个人的市场上展示。
一个想法是,Android 1.5/1.6不理解
Android:required=“false”
,这将消除没有蓝牙的设备,但这个假设由于前面提到的G1有蓝牙而无效


如果需要,请提供详细信息:,。

出于安全考虑,这可能是不可能的:

我的解决方案是发布1.5/1.6的第二个版本,在市场清单中没有这些行:

<uses-permission android:name="android.permission.BLUETOOTH" android:required="false" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:required="false"/>

将来,您还可以在ankidroid中通知他们更新和下载位置(唯一的蓝牙版本)

另一个解决办法可以是:

<manifest ...>
<uses-feature android:name="android.hardware.bluetooth" android:required="false" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="11" />
...
</manifest>

...
或者只是:

<manifest ...>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-sdk android:minSdkVersion="3" />
...
</manifest>

...
谢谢你的慷慨


消息来源是:

+1伟大的链接,正是我们的问题!这太可怕了:-(谷歌有没有就此发布官方通知?我希望我们不必生成两个应用程序,这对我们和我们的用户来说都是一个巨大的痛苦。听起来不太可能,但也许有一种方法可以在不生成两个不同的应用程序的情况下,不要求1.5和1.6版本使用蓝牙?