Play 商店报告“您的设备与此版本不兼容"但它通过 adb 安装在 Nexus7 上就好了 [英] Play store reports "Your device isn't compatible with this version" but it installs via adb just fine on Nexus7

查看:37
本文介绍了Play 商店报告“您的设备与此版本不兼容"但它通过 adb 安装在 Nexus7 上就好了的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个应用发布到私人 Google Play 测试版.我可以使用

I have an app I released to a private Google Play beta. I can install this exact same APK to my Nexus 7 just fine with

adb pm install

但通过 Google Play 商店,它被标记为与 Nexus7 完全相同

but through the Google Play store it is marked for this exact same Nexus7 as

您的设备与此版本不兼容.

这是 same apk.我不知道如何获取有关 Play 商店为何认为它不兼容的任何信息.

This is the same apk. I can't figure out how to get any information on why the play store thinks it's not compatible.

我的清单如下所示:

<uses-sdk android:minSdkVersion="10" />

<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.CAMERA"></uses-permission>
<uses-permission android:name="android.permission.RECORD_AUDIO"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.GET_TASKS" />

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

<application android:icon="@drawable/icon" android:label="@string/app_name">
    <activity android:name=".foobar"
              android:label="@string/app_name"
              android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <service android:name=".fooservice" android:exported="false" android:enabled="true" android:label="@string/app_name" android:icon="@drawable/icon">
    </service>

</application>

对确定 Google Play 认为它不兼容的原因有何帮助?

Any help on determining why Google Play thinks it is not compatible?

推荐答案

这个行为完全正确:请参考这里的官方文档 http://developer.android.com/guide/topics/manifest/uses-feature-element.html.

That's completely correct this behavior: please refer to the official documentation here http://developer.android.com/guide/topics/manifest/uses-feature-element.html.

这是相关部分:

声明的 <uses-feature> 元素仅供参考,这意味着 Android 系统本身在安装应用程序之前不会检查设备上的匹配功能支持.但是,其他服务(例如 Google Play)或应用程序可能会检查您的应用程序的 <uses-feature> 声明,作为处理或与您的应用程序交互的一部分.因此,声明应用程序使用的所有功能(来自下表)非常重要.

Declared <uses-feature> elements are informational only, meaning that the Android system itself does not check for matching feature support on the device before installing an application. However, other services (such as Google Play) or applications may check your application's <uses-feature> declarations as part of handling or interacting with your application. For this reason, it's very important that you declare all of the features (from the list below) that your application uses.

因此,您能够通过 adb 安装 apk 并不能证明特定设备是否被过滤掉.

So the fact you're able to install the apk through adb is not a proof for a particular device to be filtered off or not.

另外,请在此处查看:http://developer.android.com/guide/topics/manifest/uses-permission-element.html

在某些情况下,您请求的权限会影响 Google Play 过滤您的应用程序的方式.

In some cases, the permissions that you request through can affect how your application is filtered by Google Play.

如果您请求与硬件相关的权限(例如 CAMERA),Google Play 会假定您的应用程序需要底层硬件功能,并从不提供该功能的设备中过滤掉该应用程序.

If you request a hardware-related permission — CAMERA, for example — Google Play assumes that your application requires the underlying hardware feature and filters the application from devices that do not offer it.

更新:您已确认您使用的是 Nexus 7 2012,因此请参阅此官方博客文章:http://android-developers.blogspot.ch/2012/07/getting-your-app-ready-for-jelly-bean.html.

Update: you've confirmed you're using the Nexus 7 2012, so please refer to this official blog post: http://android-developers.blogspot.ch/2012/07/getting-your-app-ready-for-jelly-bean.html.

Google 声明需要 android.hardware.camera 功能的应用将无法在 Nexus 7 上使用".

Google states "apps requiring the android.hardware.camera feature will not be available on Nexus 7".

如果您因为在应用中使用相机而需要该权限,您可以按照 http://developer.android.com/guide/topics/media/camera.html#detect-camera.

If you need that permission because you use the camera in your app, you can do it programmatically as explained in http://developer.android.com/guide/topics/media/camera.html#detect-camera.

这篇关于Play 商店报告“您的设备与此版本不兼容"但它通过 adb 安装在 Nexus7 上就好了的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆