drm*_*wer 26 android android-permissions
在刚刚发布到Play商店的最新测试版中,我注意到READ_PHONE_STATE自上一版本以来已添加.
我自己没有添加这个.所有我都记得的事情,因为以前的版本使用v9.6.0的各种播放服务库(是v9.4.0):
compile 'com.google.android.gms:play-services-location:9.6.0'
compile 'com.google.android.gms:play-services-places:9.6.0'
compile 'com.google.android.gms:play-services-auth:9.6.0'
Run Code Online (Sandbox Code Playgroud)
这会做到吗?我看不出它的记录.我可以取消许可吗?
而且我已经确保我使用的所有库都与主应用程序相匹配,根据这个答案 ...在我的情况下没有任何区别.
编辑
基于这篇文章,我已经深入研究了我的日志输出,以找到:
ADDED from [Meteogram:jobdispatcher:unspecified] C:\Users\Me\AndroidStudioProjects\Meteogram\app\build\intermediates\exploded-aar\Meteogram\jobdispatcher\unspecified\AndroidManifest.xml:37:25-84 android:uses-permission#android.permission.READ_PHONE_STATE
Run Code Online (Sandbox Code Playgroud)
但是自上一版本以来,jobdispatcher库(我作为gradle模块导入到我的项目中)没有任何变化.
EDIT2
这个日志还有一点,我的感觉是,可能是因为游戏服务库版本被怀疑了?
ADDED from [Meteogram:jobdispatcher:unspecified] C:\Users\Me\AndroidStudioProjects\Meteogram\app\build\intermediates\exploded-aar\Meteogram\jobdispatcher\unspecified\AndroidManifest.xml:37:17-87
android:name
ADDED from [Meteogram:jobdispatcher:unspecified] C:\Users\Me\AndroidStudioProjects\Meteogram\app\build\intermediates\exploded-aar\Meteogram\jobdispatcher\unspecified\AndroidManifest.xml:37:25-84
android:uses-permission#android.permission.READ_PHONE_STATE
IMPLIED from C:\Users\Me\AndroidStudioProjects\Meteogram\app\src\pro\AndroidManifest.xml:2:1-12:12 reason: com.google.android.gmscore.integ.client.location has a targetSdkVersion < 4
activity#com.google.android.gms.common.api.GoogleApiActivity
Run Code Online (Sandbox Code Playgroud)
在targetSdkVersion < 4与对方的回答匹配上面链接,但有什么我可以在这种情况下做的,因为播放服务库是不是我的?
EDIT3
我找到了答案......而不是删除这个问题,我会留下它,用解决方案,以防它对其他人有用(以防万一其他人有更好的解决方案!)
EDIT4
看起来它已被修复9.6.1.
drm*_*wer 29
我最终发现了这个,报告了同样的问题.答案#3中提到了一种解决方法,即"手动"删除权限(我的假设是只有非常早期的Android版本才需要权限,这对我来说是好的,因为我minSdk16岁):
<manifest ...
xmlns:tools="http://schemas.android.com/tools"
... >
<uses-permission
android:name="android.permission.READ_PHONE_STATE"
tools:node="remove" />
Run Code Online (Sandbox Code Playgroud)
Mik*_*sen 22
Play Services v 12.0.0中也存在此问题.这里有一个开放的问题跟踪器.似乎两个权限都存在问题:
它可能会修复为12.0.1,正如我们在10.0.1修复中看到的那样(来自原始问题).
在此之前,我建议手动从清单中删除权限,如drmrbrewer的答案中所述.
更新
12.0.1已于2018年3月28日发布,此问题已得到解决.
请参阅此处的发行说明.
在-license工件中添加缺少的minSdkVersion,以防止自动包含READ_PHONE_STATE和READ_EXTERNAL_STORAGE权限.
ian*_*ake 20
更新#2:版本10.0.1再次修复了该问题.
更新:这也发生在Google Play服务的10.0.0版中,如本文所述.
上一个答案:
根据Android开发者G +社区中的这篇文章,其中一位版主(我)发布了此评论:
我已经在昨天内部报告了这个问题,当时开发人员指出了这个问题,修复工具已在内部完成,并且很快就会有更新的SDK
现在可以使用更新的SDK - 使用9.6.1 Google Play服务依赖项.
对于那些正在寻找与Firebase 12.0.0版相关的问题的用户,只需升级到12.0.1版即可.在12.0.0的包装中出现了错误,并在12.0.1中得到了解决.
查看发行说明:https: //developers.google.com/android/guides/releases