Play商店表示应用程序使用GET_ACCOUNTS权限,但事实并非如此



最近,Google开始使用android.permission.GET_ACCOUNTS抱怨我的应用程序(在Play商店中的Alpha),因此需要具有指向"有效的隐私策略"的链接。现在我没有那个,因为我的应用仍在alpha中,但更奇怪的是,我不需要android.permission.GET_ACCOUNTS在我的清单中获得许可。

我列出了我确实需要的权限,

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.BLUETOOTH"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<permission android:name="xxx.permission.C2D_MESSAGE" android:protectionLevel="signature" />
<uses-permission android:name="xxx.permission.C2D_MESSAGE" />
<permission android:name="xxx.permission.INTERNAL_NOTIFICATION" android:protectionLevel="signature" />
<uses-permission android:name="sxxx.permission.INTERNAL_NOTIFICATION" />

以及我的gradle依赖性:

apply plugin: 'com.google.gms.google-services'
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
// Support Library
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:recyclerview-v7:23.2.0'
compile 'com.android.support:cardview-v7:23.2.0'
// Google Play Services (Push notifications)
compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.google.android.gms:play-services-ads:8.3.0'
compile 'com.google.android.gms:play-services-identity:8.3.0'
compile 'com.google.android.gms:play-services-gcm:8.3.0'
// Calligraphy (Font)
compile 'uk.co.chrisjenx:calligraphy:2.2.0'
// Smack (XMPP client)
compile 'org.igniterealtime.smack:smack-android:4.1.1'
compile 'org.igniterealtime.smack:smack-tcp:4.1.1'
// AndroidPlot (Charts)
compile 'com.androidplot:androidplot-core:0.6.1'
// Test Targets
testCompile('junit:junit:4.12', 'org.mockito:mockito-core:1.9.5')
testCompile 'org.json:json:20140107'

,如果有人可以指出android.permission.GET_ACCOUNTS来自哪里。

删除此依赖性:

compile 'com.google.android.gms:play-services:8.3.0'

是(a)多余的,(b)包括您不使用的大量服务,这些服务大大夸大了您的应用程序的大小和方法,并且(c)将包括 ever play服务的权限集 - 包括GET_ACCOUNTS

您的其他播放服务依赖项将吸引他们独立需要的核心播放服务库。

在Android Studio中的android.permission.GET_ACCOUNTS(Ctrl Shift F)的整个项目中进行文本搜索。它可能会向您显示添加此权限要求的内容。

通过查看您的gradle依赖关系,您正在使用GCM消息通知服务。

因此,在下面的链接中接受的ANS中很好地解释了这种情况:

使用GCM时get_accounts许可 - 为什么需要此?

最新更新