with google auth application ios firebase admob google-signin

auth - Error de lanzamiento de iOS 10 GM al enviar aplicaciones "la aplicación intenta acceder a datos sensibles a la privacidad sin una descripción de uso" debido a GoogleSignIn, AdMob



google sign in swift 4 (9)

¿Es posible que Google Framework use algún marco de sistema adicional que requiera el permiso del usuario (es decir, la posición del usuario) y se olvide de agregar la descripción relacionada en el archivo .plist! Verifica eso dos veces.

Parte de la descripción del permiso de uso se hizo obligatoria en iOS 10.

Acabo de comenzar a enfrentar este problema con el lanzamiento de iOS 10 GM. Recibí un correo electrónico que decía:

Para procesar su entrega, se deben corregir los siguientes problemas:

Esta aplicación intenta acceder a datos sensibles a la privacidad sin una descripción de uso. El Info.plist de la aplicación debe contener una clave NSCameraUsageDescription con un valor de cadena que explique al usuario cómo la aplicación usa estos datos.

Una vez que se han realizado las correcciones requeridas, puede volver a entregar el binario corregido.

Saludos,

El equipo de la App Store

Estoy usando google GoogleSignIn. No estoy usando Firebase, pero cuando instalé GoogleSignIn con vainas de cacao, vi en los registros que instalaba automáticamente Firebase.

¿Hay algo que podamos hacer además de tener que definir estas teclas ya que mi aplicación no tiene nada que ver con la cámara / fotos, etc. y, por lo tanto, no quiero que los usuarios piensen que las estamos usando?

Noté que alguien más también se ha enfrentado a este problema: https://forums.developer.apple.com/thread/62229


Aquí están todas las claves de privacidad. Necesitamos agregarlas manualmente en la lista de información con una breve descripción.

• Bluetooth Sharing – NSBluetoothPeripheralUsageDescription • Calendar – NSCalendarsUsageDescription • CallKit – NSVoIPUsageDescription • Camera – NSCameraUsageDescription • Contacts – NSContactsUsageDescription • Health – NSHealthShareUsageDescription & NSHealthUpdateUsageDescription • HomeKit – NSHomeKitUsageDescription • Location – NSLocationUsageDescription, NSLocationAlwaysUsageDescription, NSLocationWhenInUseUsageDescription • Media Library – NSAppleMusicUsageDescription • Microphone – NSMicrophoneUsageDescription • Motion – NSMotionUsageDescription • Photos – NSPhotoLibraryUsageDescription • Reminders – NSRemindersUsageDescription • Speech Recognition – NSSpeechRecognitionUsageDescription • SiriKit – NSSiriUsageDescription • TV Provider – NSVideoSubscriberAccountUsageDescription


Aquí hay un enlace a una solución alternativa de Google: https://groups.google.com/d/msg/google-admob-ads-sdk/UmeVUDrcDaw/HIXR0kjUAgAJ

Más información en ese enlace, pero la versión TL; DR es que debe agregar tres elementos a su lista:

<key>NSCalendarsUsageDescription</key> <string>Advertisement would like to create a calendar event.</string> <key>NSPhotoLibraryUsageDescription</key> <string>Advertisement would like to store a photo.</string> <key>NSBluetoothPeripheralUsageDescription</key> <string>Advertisement would like to use bluetooth.</string>


Asegúrese de agregar esta clave si es ArcGIS.framework de ESRI.



En iOS 10, Apple ha exigido que se defina la descripción del uso en Info.plist para cualquier función que requiera una ventana emergente. Ver http://useyourloaf.com/blog/privacy-settings-in-ios-10/

Durante el programa beta, las aplicaciones se bloquean en el momento en que muestran el mensaje si no se configuró la descripción del uso.

Parece que las herramientas de validación de iTunes Connect se han cambiado para buscar referencias en la aplicación a clases asociadas con objetos relacionados con permisos. Si no hay una entrada Info.plist, rechazan el binario.

Vi esto en una de mis propias aplicaciones donde tenía un viejo método auxiliar en una biblioteca que detectaba si la cámara existía o no. Aunque la aplicación nunca llamó a ese método, estaba vinculada a mi binario porque sí utilicé otro método en el mismo archivo. Esa aplicación no usó la cámara y, por lo tanto, no definió la entrada Info.plist. Y fue rechazado. Simplemente eliminé mi método de ayuda y moví los cheques a las otras aplicaciones que lo usaron.

Sin embargo, AdMob parece tener referencias al Calendario, por lo que no puedo enviar una aplicación que tengo que usa anuncios y no usa el Calendario en sí. Gracias google!


Tienes permiso de la cámara en Info.Plist. Ir a Info.plist y agregar el siguiente código.

Key : Privacy - Camera Usage Description Value : $(PRODUCT_NAME) camera use

Ver esta referencia:


en iOS 10, debe agregar la clave mencionada en la imagen a continuación si está utilizando la cámara o la galería de fotos en su aplicación


EDITAR: consulte la respuesta anterior https://.com/a/39476283/1634905 que enumera la solución oficial de google. NOTA: a la solución alternativa le falta una clave adicional que también será necesaria: NSCameraUsageDescription

Solución alternativa que utilicé: los marcos de trabajo de Google para AdMob y GoogleSignIn instalan firebase automáticamente, que utiliza dichos permisos aunque la aplicación nunca lo haga. Después de definir NSCameraUsageDescription en info.plist , me permitió enviar sin problemas con la esperanza de que la aplicación no avise al usuario nunca para que tampoco vea el texto.