如何解决有关“使用短信或通话记录权限组”的谷歌播放警告

Posted

技术标签:

【中文标题】如何解决有关“使用短信或通话记录权限组”的谷歌播放警告【英文标题】:how to resolve google play warning regarding "Use of SMS or Call Log permission groups" 【发布时间】:2019-05-26 07:27:19 【问题描述】:

我已经从我的应用程序中删除了短信和通话记录权限,并使用了使用共享意图和拨号意图的常见用途的替代方案。但我仍然在我的应用程序的播放控制台中收到相同的警告。以下是我的应用中的权限列表。

<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS"
    tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

<!-- Push Notification Permission -->
<uses-permission android:name="com.onwaycab.permission.C2D_MESSAGE" />
<uses-permission 
     android:name="com.google.android.c2dm.permission.RECEIVE"/>

<!-- MAP Permission -->
<permission
    android:name="com.onwaycab.permission.MAPS_RECEIVE"
    android:protectionLevel="signature" />

<uses-permission android:name="com.onwaycab.permission.MAPS_RECEIVE" />

编辑:

即使我没有使用短信和通话记录权限,我也会收到警告,因此它不是该问题的重复。

【问题讨论】:

Why I getting "SMS and CALL_LOG permissions warning"的可能重复 通过 Android Studio 清单编辑器中的 Merged Manifest 选项卡检查您的合并清单。也许权限来自图书馆。 我已检查合并清单选项卡,但我无法找到短信或通话记录权限。请告诉我还应该做什么? 我的应用也在使用 GCM,我还没有更新到 FCM。我猜这是不是问题?你能告诉? 警告是否在您设法删除之前永久显示? 【参考方案1】:

如果您在每次刷新页面时都看到此警报,那么您的一个或多个库可能正在使用该权限。

要检查您的应用正在使用的所有权限,只需在真实设备上安装该应用并检查应用信息 - 权限

或者,将其添加到您的清单文件中。 tools:node="remove" 将删除权限,以防任何图书馆请求它。

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

还有一点很重要,如果您使用的是构建变体,请在您的最高优先级清单文件中定义它。

库清单:最低优先级 主要清单:中优先级 构建 Vairant 清单:最高优先级

【讨论】:

【参考方案2】:

我的 Playstore 控制台显示此“SMS & CALL_LOGS”相关警告。

因此,我从清单中删除了 SMS 和 CALL_LOGS 相关权限,并将最新版本的构建上传到 playstore。但是在商店发布最新版本后,警告仍然显示给我。

所以,在此之后,我填写了下面的权限声明表,现在警告被删除了。

https://docs.google.com/forms/d/e/1FAIpQLSfCnRaa4b1VuHhE4gVekWJc_V0Zt4XiTlsKsTipTlPg5ECA7Q/viewform

【讨论】:

我在从清单和 java 运行时代码中删除所有短信权限后上传新的 apk 时收到相同的消息。 请在链接中同时填写上述表格 在您删除权限之前刷新网站后,警告是否永久显示? @Panther 是的。删除权限后显示警告。但是然后我提交了上面的表格,它被删除了,没有上传一个新的版本【参考方案3】:

另一件值得检查的事情 - 我们有一个旧的 Beta 版应用,它确实在发布管理的Google Play Console 中使用了 SMS -> 应用发布。

Beta 不再处于活动状态,但旧版本仍在发布管理 -> 工件库 -> 活动工件下显示,所以我猜测 Google 仍然认为它是一个活动应用程序。有用的是,此区域还向您显示您的应用使用的所有权限,以防您担心库或插件是否在您不知情的情况下添加权限。

Removing the Beta version 并以不活跃的 Beta 版为由对删除提出上诉,并在几个小时内重新发布了该应用。

【讨论】:

以上是关于如何解决有关“使用短信或通话记录权限组”的谷歌播放警告的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式打开我的应用程序的谷歌播放服务页面[重复]

未发布的按钮在我的谷歌播放控制台中被禁用

genymotion v2.2.2 中的谷歌播放服务

【HTML5的video标签】我的谷歌浏览器无法播放,video标签里是MP4格式视频!

如何创建跟踪 JavaScript 代码,如基于 Javascript 的谷歌分析?

如何解决Flask登录中的谷歌登录问题?