我刚刚发布到Play Store上的最新测试版中,我注意到与之前版本相比增加了READ_PHONE_STATE
权限。
我自己并没有添加这个权限。在上一个版本之后,我能回忆起来做的唯一更改就是使用各种play-services库的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'
这样做可以吗?我没有找到文件记录。我能否摆脱权限?
根据这个答案,我确保我使用的所有库与主应用程序匹配......但在我的情况下没有任何区别。
编辑
好的,根据这篇文章,我已经深入研究了日志输出,发现:
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
自上一版本以来,我将作业调度程序库(作为gradle模块导入到我的项目中)中没有更改任何内容。
编辑2
这是日志中的更多信息,我感觉可能是由于play-services库版本的原因?
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
targetSdkVersion < 4
与上面链接的另一个答案相匹配,但是在play-services库不属于我自己的情况下,我能做些什么呢?
编辑3
我找到了一个答案...与其删除这个问题,我会保留它,并提供解决方案,以防对他人有用(以及以防有人有更好的解决方案!)
编辑4
看起来已经在9.6.1
中修复了。