Android 应用程序需要设备上不可用的功能

Android 应用程序需要设备上不可用的功能,android,motorola,motorola-droid,android-2.0-eclair,Android,Motorola,Motorola Droid,Android 2.0 Eclair,我在Android Market上有一个Android应用程序,但一些用户抱怨在下载后安装开始时出现错误: 其中一位向我发送了显示此错误的视频,我可以看到此错误不是由应用程序引起的,但可能是在权限/功能验证过程中 据我所知,这个错误只发生在运行Eclair的摩托罗拉Droid/Milestone设备上,Froyo没有发生。不幸的是,我没有访问任何像这样的设备来运行logcat并检查发生了什么 以下是我对AndroidManifest.xml的权限/功能: <uses-feature an

我在Android Market上有一个Android应用程序,但一些用户抱怨在下载后安装开始时出现错误:

其中一位向我发送了显示此错误的视频,我可以看到此错误不是由应用程序引起的,但可能是在权限/功能验证过程中

据我所知,这个错误只发生在运行Eclair的摩托罗拉Droid/Milestone设备上,Froyo没有发生。不幸的是,我没有访问任何像这样的设备来运行logcat并检查发生了什么

以下是我对AndroidManifest.xml的权限/功能:

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

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.ACCESS_GPS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

根据以下内容:

Android Market试图发现应用程序的隐含功能 通过检查清单中声明的其他元素来满足要求 文件,特别是元素


鉴于此,您是否尝试过删除uses功能标记?因为这些都是由uses-permissions标签提供的,而您没有使用“android:required”属性。

我最终通过获取Droid设备并运行logcat:

E/PackageManager(1280):Package com.mycompany.myapp需要不可用的功能android.hardware.telephony;失败

运行Eclair的摩托罗拉Droid设备无法安装声明

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


在他们的舱单上。不过,这很奇怪,因为Android市场应该对这些设备隐藏它。这可能是由摩托罗拉对Eclair所做的更改引起的错误,因为运行Eclair的其他设备不会出现这种情况,同样的Droid也不会运行Froyo。

该设备表示“此设备中没有此功能”当我安装从play store下载的应用程序时,我必须授予其权限

您是否可以发布用户投诉的不可用功能列表?如果此设备不支持请求的权限,则市场不应将应用程序发布到设备上。Motorala Droid是否在Android market发布者控制台的“兼容设备”列表中?对不起,rds,我不知道在market控制台的哪里可以找到兼容设备列表。我检查了这个设备的规格,它似乎拥有运行应用程序所需的所有功能=/帮助您查找兼容设备列表的屏幕截图:位于“编辑应用程序”页面谢谢Sergey!根据发布者控制台,只有三星Nexus S(crespo4g)和S(crespo)兼容。这不是真的,因为我的应用程序在39种不同的设备上运行,包括摩托罗拉Droid和Froyo。
android:required
在默认情况下是真的,所以不在这里设置也没关系。