警告Google Play开发者政策违规:需要采取措施

ysn*_*yhn 30 policy android google-play privacy-policy

我最近收到了许多来自谷歌的邮件,用于我的许多应用程序.

电子邮件内容是:

您好Google Play开发者,

我们的记录显示,您的应用程序XXXX(包名为com.XXXX.XXXXXXXXXX)目前违反了有关个人和敏感信息的用户数据政策.

政策问题:Google Play要求开发者在应用请求或处理敏感用户或设备信息时提供有效的隐私权政策.您的应用请求敏感权限(例如相机,麦克风,帐户,联系人或电话)或用户数据,但不包含有效的隐私权政策.

需要采取的措施:在应用的商品详情页面和应用内添加指向有效隐私权政策的链接.您可以在我们的帮助中心找到更多信息.

或者,您可以通过删除对敏感权限或用户数据的任何请求来选择退出此要求.

如果您的目录中有其他应用程序,请确保它们符合我们的Prominent Disclosure要求.

请在2017年3月15日之前解决此问题,否则将采取管理措施来限制应用的可见性,包括从Play商店中删除.感谢您帮助我们为Google Play用户提供清晰透明的体验.

问候,

Google Play团队

应用程序的清单权限如下所示:

1-)

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
Run Code Online (Sandbox Code Playgroud)
2-)
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />


<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />

<!--
  IMPORTANT: Change "com.parse.starter.permission.C2D_MESSAGE" in the lines below
  to match your app's package name + ".permission.C2D_MESSAGE".
-->
<permission android:protectionLevel="signature"
    android:name="com.XXXX.XXXXX.permission.C2D_MESSAGE" />
<uses-permission android:name="com.XXXX.XXXXXX.permission.C2D_MESSAGE" />
Run Code Online (Sandbox Code Playgroud)
3-)
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<uses-feature android:name="android.hardware.camera" />
Run Code Online (Sandbox Code Playgroud)
4-)
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />

<uses-permission android:name="com.xxxx.xxxxx.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />
Run Code Online (Sandbox Code Playgroud)
5)
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="com.android.vending.BILLING" />

<permission
    android:name="com.xxx.xxxx.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />

<uses-permission android:name="com.xxxx.xxxx.permission.C2D_MESSAGE" />
Run Code Online (Sandbox Code Playgroud)
这些是我使用的库

compile 'com.google.android.gms:play-services-ads:10.0.1'
compile 'com.android.support:support-v4:25.1.1'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:2.0.1'
compile 'com.melnykov:floatingactionbutton:1.3.0'
compile 'com.android.support:appcompat-v7:25.1.1'
compile 'com.baoyz.swipemenulistview:library:1.2.1'
compile 'com.google.android.gms:play-services-analytics:10.0.1'
compile 'com.flaviofaria:kenburnsview:1.0.7'
compile 'com.commit451:PhotoView:1.2.4'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
compile 'com.code-troopers.betterpickers:library:2.2.2'
compile 'com.android.support:cardview-v7:25.1.1'
compile 'com.onesignal:OneSignal:3.3.1@aar'
compile 'com.google.android.gms:play-services-gcm:10.0.1'
compile 'com.google.android.gms:play-services-location:10.0.1'
compile 'com.android.support:design:25.1.1'
compile 'me.leolin:ShortcutBadger:1.1.10@aar'
// retrofit
compile('com.squareup.retrofit2:retrofit:2.1.0') {
    exclude module: 'okhttp'
}
compile 'com.squareup.okhttp3:okhttp:3.0.0'
compile 'com.squareup.okhttp3:logging-interceptor:3.0.1'
compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'io.reactivex:rxandroid:1.1.0'
// UI binding
compile 'com.jakewharton:butterknife:8.2.1'
apt 'com.jakewharton:butterknife-compiler:8.2.1'
// DB
compile 'org.greenrobot:greendao:3.0.1'
compile 'com.github.paolorotolo:appintro:4.1.0'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
Run Code Online (Sandbox Code Playgroud)

哪些权限违反了Google用户数据?是否存在违反Google用户数据的权限列表?怎么解决?我应该删除它们还是有另一种解决方案?如果我必须准备隐私政策,还有一些例子吗?

谢谢你的问候.

0xA*_*iHn 32

有一些方法可以克服这种违反政策的行为.首先,您需要制作策略违规文件.要做到这一点在某种程度上:

  1. 转到此链接:https://app-privacy-policy-generator.firebaseapp.com/

然后提供您的应用名称,开发者帐户名称等,然后生成您的策略文件.

  1. 或者你可以使用这个模板:https: //gist.github.com/alphamu/c42f6c3fce530ca5e804e672fed70d78

    然后只需将app name,开发者帐户等替换为你的.

现在您如何链接您的隐私文件:

如果您有自己的服务器,则可以在服务器中托管该文件并使用该链接.如果没有,那么还有其他方法可以完成您的工作.

  1. 您可以将文件放在git中然后使用该链接
  2. 您还可以采用更好的方式,例如在Google云端硬盘中创建一个docs文件,然后在其上粘贴您的政策文字,然后选择File->Publish for the web您将获得一个链接,只需在您的政策网址中使用该链接即可.

希望这些能帮到你.

  • 嗨,我是App Privacy Policy Generator的开发者(https://app-privacy-policy-generator.firebaseapp.com/).谢谢你提到我的项目.对于想要在webapp中获得新功能的人,你可以联系我:) (10认同)

小智 10

您需要添加隐私政策.要在商店列表中添加隐私权政策,请执

  1. 转到您的Google Play开发者控制台.
  2. 选择一个应用程序
  3. 选择商店列表.
  4. 在"隐私政策"下,输入您在线托管隐私政策的网址.
  5. 选择保存草稿(新应用程序)或提交更新(现有应用程序).


小智 5

READ_CONTACTS是一项敏感权限,Google 要求您拥有隐私政策。

其他敏感权限包括摄像头、录音、联系人。

您可以通过删除要求提供个人数据的敏感权限或向您的 Android 应用添加隐私政策 URL 来解决违规问题:

  1. 登录您的 Google Play 开发者控制台。
  2. 选择所有应用程序
  3. 选择应用
  4. 点击商品详情
  5. 隐私政策字段中输入您的隐私政策的公共 URL :

Google App Dashboard 上的隐私政策字段

请注意,您需要在您的网站上托管您的隐私政策,并在“隐私政策”字段中提供 URL。Google 不会为您托管该协议。

您可以使用的其他托管策略的替代方法是 GitHub Pages。


Nai*_*oni 5

就我而言,旧应用程序(部署在 BETA 轨道上)产生了问题,控制台也发出了同样的警报。

因此,请检查所有轨道(Beta、Alpha、Internal 和 Production)中的所有活动应用程序是否有受限权限组。