web-dev-qa-db-fra.com

Avertissement de violation de la stratégie de développement de Google Play: action requise

J'ai récemment reçu de nombreux mails de Google pour bon nombre de mes applications.

Le contenu de l'email est:

Bonjour développeur Google Play,

Nos enregistrements indiquent que votre application, XXXX, avec le nom du package com.XXXX.XXXXXXXXXX, enfreint actuellement notre politique de protection des données des utilisateurs concernant Informations personnelles et sensibles.

Problème de stratégie: Google Play impose aux développeurs de fournir un .__ valide. Politique de confidentialité lorsque l'application demande ou gère un utilisateur sensible ou informations sur le périphérique. Votre application demande des autorisations sensibles (par exemple, une caméra, un microphone, des comptes, des contacts ou un téléphone) ou des données utilisateur, mais n'inclut pas de politique de confidentialité valide.

Action requise: Incluez un lien vers une politique de confidentialité valide sur votre fichier Page de la liste de magasin de l'application et dans votre application. Vous pouvez trouver plus informations dans notre centre d'aide.

Sinon, vous pouvez vous désinscrire de cette exigence en supprimant tout demandes d'autorisations sensibles ou de données utilisateur.

Si vous avez d'autres applications dans votre catalogue, assurez-vous qu'elles sont bien conforme à nos exigences en matière de divulgation de premier plan.

Veuillez résoudre ce problème avant le 15 mars 2017, ou une action administrative seront prises pour limiter la visibilité de votre application, y compris retrait du Play Store. Merci de nous aider à fournir un clair et expérience transparente pour les utilisateurs de Google Play.

Cordialement,

L'équipe Google Play

Les autorisations manifestes des applications sont répertoriées ci-dessous:

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" />
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" />
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" />
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" />


        Android:name="com.xxxx.xxxxx.permission.C2D_MESSAGE"
        Android:protectionLevel="signature" />
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" />
Ce sont les bibliothèques que j'utilise

    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:+'

Lesquelles de ces autorisations violent les données utilisateur Google? Existe-t-il une liste des autorisations violant les données utilisateur Google? Comment y remédier? Dois-je les supprimer ou existe-t-il une autre solution? De plus, si je dois préparer une politique de confidentialité, y a-t-il des exemples?

Merci en ce qui concerne.

27
ysnsyhn

Il existe un moyen de surmonter cette violation de la politique. Tout d’abord, vous devez créer un fichier de violation de politique. Pour faire ceci, voici un moyen:

  1. Allez sur ce lien: https://app-privacy-policy-generator.firebaseapp.com/

puis indiquez le nom de votre application, le nom du compte développeur, etc., puis générez votre fichier de règles. 

  1. ou vous pouvez utiliser ce modèle: https://Gist.github.com/alphamu/c42f6c3fce530ca5e804e672fed70d78

    il vous suffit ensuite de remplacer le nom de l'application, le compte du développeur, etc. par le vôtre. 

Maintenant, comment vous associez votre fichier de confidentialité:

Si vous avez votre propre serveur, vous pouvez héberger le fichier sur votre serveur et utiliser ce lien. Sinon, il existe un autre moyen de faire votre travail.

  1. Vous pouvez mettre votre fichier dans git puis utiliser ce lien
  2. Vous optez également pour un meilleur moyen, par exemple, créez simplement un fichier de documentation dans votre lecteur google, collez ensuite votre texte de stratégie sur celui-ci, puis sélectionnez File->Publish for the web.

J'espère que cela vous aidera. 

27
0xalihn

Vous devez ajouter une politique de confidentialité. Pour ajouter une politique de confidentialité à votre liste de magasin:

  1. Accédez à votre console de développeur Google Play.
  2. Sélectionnez une application.
  3. Sélectionnez la liste des magasins.
  4. Sous "Politique de confidentialité", entrez l'URL où se trouve la politique de confidentialité hébergée en ligne.
  5. Sélectionnez Enregistrer le brouillon (nouvelles applications) ou Soumettre la mise à jour (applications existantes).
9
david clardy

READ_CONTACTS est une autorisation sensible et Google vous impose de respecter une politique de confidentialité.

Les autres autorisations sensibles sont la caméra, l'enregistrement audio et les contacts.

Vous pouvez remédier à la violation en supprimant les autorisations sensibles demandant des données personnelles ou en ajoutant une URL de politique de confidentialité à votre application Android:

  1. Connectez-vous à votre console de développeur Google Play.
  2. Sélectionnez Toutes les applications
  3. Sélectionnez l'application
  4. Cliquez sur Liste de magasins
  5. Entrez l'URL publique de votre politique de confidentialité dans le champ Politique de confidentialité:

Privacy Policy field on Google App Dashboard

Notez que vous devez héberger votre politique de confidentialité sur votre site Web et fournir l'URL de cette "Politique de confidentialité ". champ. Google n'hébergera pas l'accord pour vous.

GitHub Pages est une autre alternative à la politique que vous pouvez utiliser.

4
TermsFeed

Il y a un commentaire jaune à côté de l'URL de la politique de confidentialité du champ, pour quelle autorisation faire cela dans votre apk.

Cependant, dès la première révision de votre manifeste, READ_PHONE_STATE et GET_ACCOUNTS sont des autorisations qui nécessitent une URL de stratégie. 

3
neowhoru

Je leur ai demandé quelle pouvait être la solution et ils m'ont envoyé ce courriel aujourd'hui:

Je serai ravi de vous aider à clarifier vos questions concernant l'avertissement relatif à la politique de confidentialité. Il y a trois façons de résoudre ce problème:

1- Si votre application demande des données utilisateur ou fait des demandes d'autorisations sensibles tels que téléphone, comptes, contacts, appareil photo ou microphone, vous aurez besoin de pour ajouter une politique de confidentialité valide à deux endroits: la liste de magasins de votre application page (instructions ci-dessous) et au sein de votre application. 

2- En deuxième option, vous peut supprimer toutes les demandes de données utilisateur ou d'autorisations sensibles. Pour Par exemple, vous devrez supprimer les permissons potentiellement sensibles du manifeste. Vous n'aurez pas besoin d'ajouter de politique de confidentialité si vous supprimer ces demandes. 

3- Si vous ne pouvez pas effectuer les étapes 1 ou 2, vous aurez besoin de dépublier l’application du Play Store. Si votre application est déjà non publié, vous n’avez pas besoin d’agir à moins de republier le application à l'avenir.

de toute façon dans mon application je n'ai pas de demandes pour les permissions mentionnées (Caméra, Contacts, Microphone ... etc) 

J'utilise **google Admob** dedans. Et je pense que cela provoque peut-être les demandes de ces autorisations !!!. J'ai aussi vu que vous utilisez les annonces de service Google Play (admob) dans votre titre:

compile 'com.google.Android.gms:play-services-ads:10.0.1'

Possible Solution: Il existe un moyen de supprimer les permissions dans gradle:

<uses-permission Android:name="Android.permission.Camera" tools:node="remove" />
<uses-permission Android:name="Android.permission.READ_CONTACTS" tools:node="remove" />
// and for other permissions you may add here 

Ce n’est pas la solution la meilleure, nous pouvons attendre une autre solution, mais c’est ce que j’ai eu jusqu’à présent ...

2
MBH

Dans mon cas, une ancienne application (déployée sur une piste BETA) posait problème et la console donnait l'alerte pour la même chose.

Vérifiez donc toutes les applications actives dans toutes les pistes (Bêta, Alpha, Internes et Production) pour les groupes d’autorisation restreints.

1
Naitik Soni

confirmer la réponse de Naitik Soni. Nous avons l'autorisation "READ_SMS" sur la piste de production, nous ne pouvons donc déployer que la nouvelle version sans l'autorisation de production.

0
superyarik

Cette erreur de violation est due à la permission

<uses-permission Android:name="Android.permission.READ_CONTACTS" />

Vous devriez en savoir plus sur les règles de développement de Google pour les mêmes . Si cette autorisation n'est pas obligatoire, vous pouvez la supprimer et vous n'obtiendrez pas cette erreur alors . Sinon, vous devez d'abord fournir l'URL de la stratégie à votre application dans google play console de développeur et vous devez également fournir la même URL dans l'application.

0
B.shruti