为什么我的应用程序不支持 google 播放中的所有设备?

Why my application doesnt support all devices in google play ?

我的应用程序不支持大约 2000 台设备。什么是问题? gradle 和清单文件是否适合支持设备。例如 HTC Desire 310 和 HTC Wildfire 不支持我的应用程序。

gradle

   minSdkVersion 10
    targetSdkVersion 22  

manifest.xml

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

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

使用 <uses-feature> & <supports-screens> 启用更多设备 google 播放。

<uses-feature> 声明是告知任何外部实体您的应用程序所依赖的硬件和软件功能集。该元素提供了一个 required 属性,允许您指定您的应用程序是否需要并且不能在没有声明的功能的情况下运行,或者它是否更喜欢具有该功能但可以在没有它的情况下运行。 read more

确保用户这两个属性取决于您的应用程序要求,例如如果您的应用程序使用相机但它不是必须要求然后使用

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

<supports-screens> 一个应用程序 "supports" 一个给定的屏幕大小,如果它适当地调整大小以填满整个屏幕。系统应用的正常大小调整适用于大多数应用程序,您无需执行任何额外工作即可使您的应用程序在比手机设备大的屏幕上运行。 确保根据您的要求同时使用两者。 read more

支持 phone

的屏幕元素
<supports-screens
        android:largeScreens="true"
        android:normalScreens="true"
        android:resizeable="true"
        android:smallScreens="true"
        android:xlargeScreens="true" />

如果您的应用支持平板电脑,请在上面的代码中添加 android:requiresSmallestWidthDp="720"

设备无法在 google play 中下载应用程序的原因有很多。其中一些是:

  • 设备不满足gradle中指定的最低sdk。
  • 您的清单中有一个 <uses-feature> 标记,并且您将 "required" 参数设置为 true。如果设备不具备所需的功能(例如 NFC),则该应用将无法用于该设备。

除此之外可能还有其他原因。 您不妨检查一下您是否在清单和 gradle 中都指定了最小 sdk,如果是这样,android 将忽略清单中声明的​​。