Advertencia de infracción de la política de desarrollador de Google Play: Acción necesaria

Recientemente recibí muchos correos de google para muchas de mis aplicaciones.

El contenido del correo electrónico es:

Hola Desarrollador de Google Play,

Nuestros registros muestran que su aplicación, XXXX, con el nombre del paquete com.XXXX.XXXXXXXXXX, viola actualmente nuestra política de datos de usuario con respecto a la información personal y sensible.

Problema de política: Google Play requiere que los desarrolladores proporcionen una política de privacidad válida cuando la aplicación solicite o maneje información sensible de usuarios o dispositivos. Su aplicación solicita permisos confidenciales (por ejemplo, cámara, micrófono, cuentas, contactos o teléfono) o datos de usuario, pero no incluye una política de privacidad válida.

Acción requerida: Incluya un vínculo a una política de privacidad válida en la página de la página de la tienda de su aplicación y dentro de su aplicación. Puede encontrar más información en nuestro Centro de ayuda.

Como alternativa, puede inhabilitar este requisito eliminando las solicitudes de permisos o datos de usuario confidenciales.

Si tiene aplicaciones adicionales en su catálogo, asegúrese de que cumplen con los requisitos de Divulgación prominente.

Solucione este problema antes del 15 de marzo de 2017 o se tomarán medidas administrativas para limitar la visibilidad de su aplicación, incluida la eliminación de Play Store. Gracias por ayudarnos a proporcionar una experiencia clara y transparente para los usuarios de Google Play.

Saludos,

El equipo de Google Play

Los permisos de manifiesto de las aplicaciones se enumeran a continuación:

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

Estas son las bibliotecas que estoy usando

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

¿Cuáles de estos permisos infringen los datos de usuario de Google? ¿Hay una lista de permisos que están violando los datos de usuario de Google? ¿Como arreglarlo? ¿Debo eliminarlos o hay otra solución para ello? También si tengo que preparar una política de privacidad hay algunos ejemplos?

Gracias en lo que respecta.

Debe agregar una política de privacidad. Para agregar una política de privacidad a su ficha de la tienda:

  1. Accede a la consola de Google Play para desarrolladores.
  2. Selecciona una aplicación.
  3. Seleccione Lista de tiendas.
  4. En "Política de privacidad", ingrese la URL donde tiene la política de privacidad alojada en línea.
  5. Seleccione Guardar borrador (nuevas aplicaciones) o Enviar actualización (aplicaciones existentes).

Hay alguna manera de superar esta violación de la política. Primero de todo usted necesita hacer el archivo de la violación de la política. Para hacer esto aquí es de alguna manera:

  1. Ir a este enlace: https://app-privacy-policy-generator.firebaseapp.com/

Y luego proporcione su nombre de aplicación, nombre de cuenta de desarrollador, etc, y luego genere su archivo de política.

  1. O puede utilizar esta plantilla: https://gist.github.com/alphamu/c42f6c3fce530ca5e804e672fed70d78

    Y luego acaba de reemplazar el nombre de la aplicación, cuenta de desarrollador, etc con el suyo.

Ahora cómo vincular su archivo de privacidad:

Si tiene un servidor propio, puede alojar el archivo en su servidor y utilizar ese enlace. Si no, entonces hay alguna otra manera de hacer su trabajo.

  1. Usted puede poner su archivo en git a continuación, utilice ese enlace
  2. Usted también va para una manera mejor, tal como apenas crea un archivo de los docs en su impulsión de google y después pega su texto de la política en eso y entonces selecciona File->Publish for the web usted conseguirá un acoplamiento para compartir apenas utiliza ese acoplamiento en su Url de la política.

Espero que estos le ayudará.

Hay un comentario amarillo cerca de la URL de la política de privacidad del campo es qué permiso causa esto en tu apk.

Sin embargo, desde la primera revisión de su manifiesto READ_PHONE_STATE y GET_ACCOUNTS son definitivamente los permisos que necesitan una URL de directiva.

Les pregunté acerca de lo que puede ser la solución y me enviaron este correo electrónico hoy:

Me complace ayudarle a aclarar cualquier pregunta que tenga sobre la advertencia de la política de privacidad. Hay tres maneras de abordar este problema:

1- Si su aplicación solicita datos de usuario o hace solicitudes de permisos confidenciales, como Teléfono, Cuentas, Contactos, Cámara o Micrófono, deberá agregar una política de privacidad válida en dos lugares: la página de listado de tiendas de su aplicación (instrucciones a continuación) y Dentro de su aplicación.

2- Como segunda opción, puede eliminar cualquier solicitud de datos de usuario o permisos confidenciales. Por ejemplo, necesitaría eliminar los permissons potencialmente sensibles del manifiesto. No necesitará agregar una política de privacidad si elimina estas solicitudes.

3- Si no puede completar los pasos 1 o 2, tendrá que cancelar la publicación de la aplicación de Play Store. Si tu aplicación ya no se ha publicado, no es necesario actuar a menos que vuelvas a publicar la aplicación en el futuro.

De todos modos en mi aplicación no tengo peticiones de los permisos mencionados (cámara, contactos, micrófono … etc)

Yo uso **google Admob** en ella. Y creo que tal vez hace que las solicitudes de los permisos !!!. También vi que estás usando los anuncios de servicio de juegos de google (admob) en tu gradle:

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

Posible Solución: Hay una manera de eliminar los permisos en 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 

No es la mejor solución, podemos esperar otra solución mejor, pero esto es lo que tengo hasta ahora …

READ_CONTACTS es un permiso confidencial y Google requiere que usted tenga una Política de privacidad.

Otros permisos sensibles son cámara, grabación de audio, contactos.

Puede solucionar la infracción eliminando los permisos confidenciales que solicitan datos personales o agregando una URL de Política de privacidad a su aplicación de Android:

  1. Inicie sesión en la consola de Google Play para desarrolladores.
  2. Seleccionar todas las aplicaciones
  3. Seleccione la aplicación
  4. Haga clic en Lista de tiendas
  5. Ingrese la URL pública de su Política de privacidad en el campo Política de privacidad :

Campo de la Política de privacidad en Google App Dashboard

Tenga en cuenta que debe alojar su Política de privacidad en su sitio web y proporcionar la URL en ese campo "Política de privacidad". Google no será el anfitrión del acuerdo para usted.

Otras alternativas para alojar la política que puede utilizar son GitHub Pages o TermsFeed (divulgación: esta es nuestra herramienta para crear y alojar una Política de privacidad para aplicaciones de Android).

Este error de violación se produce debido al permiso

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

Debe leer acerca de las políticas de desarrollador de Google para el mismo. Si este permiso no es obligatorio, puede quitarlo y no obtendrá este error. De lo contrario, primero debe proporcionar URL de política a su aplicación en la consola de Google Play para desarrolladores y también debe proporcionar la misma URL en la aplicación.

  • ¿Has pagado la aplicación de Android gratis durante una semana?
  • No se pudo iniciar sesión. Compruebe la conexión de red e inténtelo de nuevo.
  • ¿Cómo detectar si la Google Play Store está descargando / instalando una aplicación específica?
  • Android Publisher Account en Android Market
  • ¿Es necesario firmar todas las aplicaciones enviadas a Google Play Store a través de una cuenta de desarrollador con la misma clave?
  • ¿Es posible tener múltiples apoyos de APK basados ​​en el país?
  • Publicar una aplicación en la tienda de Google Play
  • ¿Cuál es el ID de producto reservado apropiado para probar las suscripciones en la aplicación con Android?
  • JSON search API para encontrar aplicaciones de Android (en Android Market y en otros lugares)?
  • Algo ha cambiado en las facturas en la aplicación en Android
  • Tabla actualizada de tamaños de pantalla
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.