之前发布了一个应用到 Google Play,发现审核成功之后在 Google Play 也搜不到。

但是我通过控制台的链接发现是能访问的,但是我点击安装的时候显示我没有设备支持安装?

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

我发现之前传的版本在版本列表里没有显示支持多少设备。

今天在传一个版本的时候发现这个支持的设备为 0 ,搜索了很久都在说我用到了一些特殊权限,于是我仔细看了控制台的每个功能。发现一个测试报告里有一个错误,于是我以为是这个问题导致的,这是一个有盟数据统计的包,既然影响我上架那就删掉它,但是我想了想,这是团队的另外一个小伙伴加的,我这么直接干掉也不太好,于是只能折腾一下给 Google Play 弄个渠道包了(弄渠道包也踩了不少坑,之后有空会出一个博客的,如果我没写的话小伙伴们可以评论区催更哦)

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

当我费老大劲终于把渠道包整出来之后,上传发布测试包之后发现显示支持的 Android 设备还是为 0

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

我将支持的设备切换到全部设备之后搜索了一下我自己手机的型号,点开详情页面才发现端倪!

所以现在看看我的应用到底是为啥不支持这些设备的。

首先点击将筛选切换为 全部设备 ,然后找到不支持的设备点击查看设备详情。如下图

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

进入设备详情之后看到 轨道状态,点击展开

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

现在就能看到设备不支持的原因了,没错就是 android.hardware.camera2.full 这个权限导致我的应用被判定不支持这些设备。那么怎么解决呢?

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

我打开了应用的 AndroidManifest.xml 发现我并没有没有声明 android.hardware.camera2.full 权限呀?

于是我用 Android Studio 的 analyze 分析打开了打包好的 APK ,果然让我发现了罪魁祸首

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

既然不是我写的那指定是哪个第三方 SDK 给整进来的,我看到这个权限知道它是拍照相关的就猜到了一个 SDK,你们的话如果猜不出来的话要不就把依赖一个个打开看看,要不就直接在 AndroidManifest.xml 重新声明一次,然后加上 required 属性,将这个权限声明未非必须就 ok 了。

android:required="false"

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝

我这里直接将大部分权限都声明为非必须的权限了。

然后重新打包上传,终于出现支持的设备列表了!我悟了,不过我感觉这才只是开始,Google Play 控制台我还有很多地方没玩明白,不知道是不是功能太多了,总感觉这玩意还是有点上手难度的

我悟了,解决 Google Play 发布之后支持的 Android 设备为 0 的问题-天真的小窝