Pregunta La aplicación se bloquea con __CRASHING_DUE_TO_PRIVACY_VIOLATION__ cuando intenta acceder a los contactos


Al actualizar a iOS 10, al intentar acceder a los contactos a través del complemento cordova-plugin-contacts v2.2.0, la aplicación sale con

__CRASHING_DUE_TO_PRIVACY_VIOLATION__

No sé qué otra información adicional puedo proporcionar en este momento, solo avíseme si puedo ser más específico. Gracias.

Tal vez esto sea de alguna utilidad: https://stackoverflow.com/a/39416858/592641, pero no pude encontrar una guía sobre cómo especificar esas descripciones de uso en cordova.


32
2017-09-19 11:02


origen


Respuestas:


Después de crear el proyecto xcode y encontrar el Info.Plist archivo, puede intentar agregar NSContactsUsageDescription clave, que debería aceptar un valor de cadena.

Una lista completa de llaves de cacao

¡Espero que ayude!

EDITAR

Una parte del documento: (que puede ayudarlo a entender por qué está fallando)

Importante: para proteger la privacidad del usuario, una aplicación de iOS vinculada en o después de iOS   10.0, y que accede a los contactos del usuario, debe declarar estáticamente la intención de hacerlo. Incluya la clave NSContactsUsageDescription en   el archivo Info.plist de su aplicación y proporcione una cadena de propósito para esta clave.    Si su aplicación intenta acceder a los contactos del usuario sin una   cadena de propósito correspondiente, su aplicación se cierra.


32
2017-09-19 11:52



En resumen, las descripciones de uso deben especificarse en el interior *info.plist

Eso no es bueno para la base de código de Cordova ya que los archivos .plist no son parte del repositorio. La forma más sencilla que encontré para ponerlos dentro de config.xml es esto:

  1. Instalar cordova-custom-config 
  2. Agregue lo siguiente dentro de config.xml:

.

<platform name="ios">
    <config-file parent="NSContactsUsageDescription" target="*info.plist">
      <string>Easily invite your friends</string>
    </config-file>
</platform>

6
2017-09-19 16:02



Mi aplicación faltaba NSFaceIDUsageDescription llave


5
2018-05-07 10:33



Para mí, estaba tratando de solicitar acceso al micrófono, pero no había definido el Privacy - Microphone Usage Description cuerda.

Vaya a su archivo Info.plist y desplácese hacia abajo a los valores que comienzan con Privacy. Asegúrese de agregar claves y valores de cadena para todo lo relacionado con su aplicación.

Screenshot of the values that start with Privacy in the info.plist


2
2017-12-15 17:27



Llegué aquí con el mismo error usando Kudan AR a través de Unity, y la respuesta de @ NeverHelpless estaba en el objetivo, excepto que la solución era NSCameraUsageDescription (Añadir Info.plist con una cadena de descripción)


0
2018-06-30 20:13



Mi Info.plist faltaba NSPhotoLibraryAddUsageDescription. Ahora hay DOS permisos asociados con la biblioteca de fotos (a partir de iOS 11):

  • NSPhotoLibraryUsageDescription: para acceder a la biblioteca de fotos
  • NSPhotoLibraryAddUsageDescription - escribir solo permiso para la biblioteca de fotos

Tuve el primer permiso antes de iOS 11 cuando era la única clave necesaria para usar la biblioteca de fotos. Aparentemente en iOS 11 agregaron el segundo y lo obligaron a agregar fotos a la biblioteca. Entonces, si admite iOS 10 pero no incluye la segunda clave, se bloqueará en iOS 11.

Todas las llaves están aquí


0
2017-07-07 18:07