maxSdk 的权限显示为 Play 商店中每个应用程序更新的新权限
Permission with maxSdk shows up as new permission on every app update on Play Store
我有一个应用程序使用外部存储在 getExternalCacheDir()
提供的目录中保存一些较大的缓存文件。现在因为 Android 4.4 不再需要访问这个目录的权限,所以我决定设置一个 maxSdk
权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
但是当我在 Google Play 商店发布我的应用程序更新时,权限对话框将上述权限显示为 [=28= 上的 new 权限] KitKat 和 Lollipop,即 API 级别 19–22,即使这些版本不应该要求:
当我在系统设置中查看应用程序详细信息时,未列出权限,因此系统似乎正确解释了 maxSdk
属性。
我该如何解决这个问题?非常糟糕的是,我的应用程序的用户必须在每次更新时接受此 "new" 权限,即使根本不需要它...
显然这是 Google Play 商店中的一个错误,据 issue 63898 and issue 63895 报道,它似乎尚未修复。
所以我们对此无能为力,除了不使用 maxSdk
属性或首先尝试避免权限。
至少在支持运行时权限的 Android 6.0 和更新版本上没有问题,因为 Play 商店不会在此处列出任何安装时的权限。
我有一个应用程序使用外部存储在 getExternalCacheDir()
提供的目录中保存一些较大的缓存文件。现在因为 Android 4.4 不再需要访问这个目录的权限,所以我决定设置一个 maxSdk
权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
但是当我在 Google Play 商店发布我的应用程序更新时,权限对话框将上述权限显示为 [=28= 上的 new 权限] KitKat 和 Lollipop,即 API 级别 19–22,即使这些版本不应该要求:
当我在系统设置中查看应用程序详细信息时,未列出权限,因此系统似乎正确解释了 maxSdk
属性。
我该如何解决这个问题?非常糟糕的是,我的应用程序的用户必须在每次更新时接受此 "new" 权限,即使根本不需要它...
显然这是 Google Play 商店中的一个错误,据 issue 63898 and issue 63895 报道,它似乎尚未修复。
所以我们对此无能为力,除了不使用 maxSdk
属性或首先尝试避免权限。
至少在支持运行时权限的 Android 6.0 和更新版本上没有问题,因为 Play 商店不会在此处列出任何安装时的权限。