【问题标题】:App rejected on play store because of background location permission由于后台位置权限,应用在 Play 商店被拒绝
【发布时间】:2021-08-01 15:29:33
【问题描述】:

我在将新版本的应用放入 Play 商店时遇到问题,希望有人能帮助我。这个应用程序的早期版本基本上是一个不同的应用程序,新版本是从头开始构建的。当我上传应用程序包以供审核时,我最终得到了一个状态更新,表明后台位置权限存在问题,并且权限声明表单中缺少它(因为我删除了它,因此不再需要它)。它指出至少有一个功能使用此访问权限。在受影响的 APK(s) 中,它显示了一年多前发布的捆绑包,这让我感到困惑。

“新”应用程序正在使用 ACCESS_FINE_LOCATION 和 ACCESS_COARSE_LOCATION 权限以及 compileSdkVersion 30、minSdk 21 和 targetSdk 30。此版本不应使用后台位置访问,因此我在 AndroidManifest.xml 中添加了以下行:

<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" tools:node="remove"/>

我还在文件顶部的清单标记内声明了这些工具。

当我运行应用程序并查看它在 apps/myapp/permissions 下的权限时,我看到了粗略和精细的位置访问权限,但没有后台访问权限。在 Play 商店中探索 bundle 时,后台访问也不在权限列表中,在 AndroidStudio 中分析 bundle 和 manifest 时也找不到。

查看包时,我找不到可能插入此权限的包的指示。

我想知道是否有更好的方法来调试它,而不是上传到 Play 商店进行审核,以及我可能在此处缺少的内容以供批准。

【问题讨论】:

  • 首先检查你的合并清单和 app/build/intermediates/merged_manifests 和 app/build/intermediates/manifest_merge_blame_file 下的相应责备文件,以确保你真的没有使用该权限(例如通过一些依赖)。之后,请确保您在 Google Play 中没有任何旧版本的应用程序(例如,在 Alpha / Beta / Internal Test 轨道中)使用该权限(或使用任何位置权限以及旧的 targetSdkVersion)。
  • 我相信处于测试阶段的旧版本之一可能是问题的原因。这也是拒绝消息所指的捆绑包,这让我感到困惑。我将尝试将新版本上传到该轨道以替换它,然后尝试发布到商店。如果确实是问题,我会告诉你的。
  • @Michael 之前的Beta版本确实有问题,谢谢你的回答!如果您将其发布为下面的答案,我会将其标记为已接受的答案

标签: android flutter google-play


【解决方案1】:

Android 10(API 级别 29)将some changes 引入了位置权限。该更改对针对旧版 Android 的应用的影响如下:

如果您的应用在 Android 10 或更高版本上运行,但以 Android 9(API 级别 29)或更低版本为目标,则平台会应用以下行为:

  • 如果您的应用为 ACCESS_FINE_LOCATION 或 ACCESS_COARSE_LOCATION 声明了一个元素,系统会在安装过程中自动为 ACCESS_BACKGROUND_LOCATION 添加一个元素。
  • 如果您的应用请求 ACCESS_FINE_LOCATION 或 ACCESS_COARSE_LOCATION,系统会自动将 ACCESS_BACKGROUND_LOCATION 添加到请求中。

因此,在 Google Play 中使用 ACCESS_FINE_LOCATION 和/或 ACCESS_COARSE_LOCATION 并且具有 targetSdkVersion ACCESS_BACKGROUND_LOCATION .它是否真的在后台读取位置数据是另一回事;这里重要的是它声明了权限。

这些规则适用于您的所有发布轨道 - 无论是生产轨道、alpha/beta 轨道、内部测试轨道等。如果其中任何一个符合上述标准,您必须发布更新版本您的应用在该发布轨道上的位置。

【讨论】:

    【解决方案2】:

    如果您绝对确定您没有在代码中的任何地方使用权限。是时候检查你的依赖了,如果它们中的任何一个使用了这个权限。

    【讨论】:

    • 嗨 Nisanth,我添加它是因为应用程序不应包含后台位置访问,这只是我迄今为止尝试过的潜在修复之一。我将编辑问题以使其更清楚。
    • 知道了。在这种情况下,请检查您的依赖项,如果其中任何一个正在使用此权限。我过去也遇到过这种情况。
    猜你喜欢
    • 2020-02-20
    • 2020-08-03
    • 2019-03-03
    • 2020-12-13
    • 2019-08-26
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 2019-08-30
    相关资源
    最近更新 更多