43 votes

L'application se bloque avec __CRASHING_DUE_TO_PRIVACY_VIOLATION__ lors d'une tentative d'accès aux contacts

Lors de la mise à jour vers iOS 10, lorsque vous essayez d'accéder aux contacts par le biais de plugin cordova-plugin-contacts v2.2.0, l'application se ferme avec

__CRASHING_DUE_TO_PRIVACY_VIOLATION__

Je ne sais pas ce que les autres informations supplémentaires que je peux fournir dès maintenant, laissez-moi savoir si je peux être plus précis. Merci.

C'est peut-être d'une certaine utilité: https://stackoverflow.com/a/39416858/592641mais je ne pouvais pas trouver un guide de comment spécifier l'utilisation de descriptions de cordoue.

35voto

NeverHopeless Points 3962

Après la création de xcode projet et de trouver l' Info.Plist le fichier, vous pouvez essayer d'ajouter de la NSContactsUsageDescription clé, ce qui doit accepter une valeur de chaîne.

Une liste complète des Touches de Cacao

Espérons que ça aide!

MODIFIER

Une partie de la doc: (qui peut vous aider à comprendre pourquoi il se bloque)

Important: afin De protéger la confidentialité de l'utilisateur, une application iOS, liés à ou après iOS 10.0, et qui permet d'accéder à des contacts de l'utilisateur, doit statiquement déclarer l'intention de le faire. Inclure le NSContactsUsageDescription clé dans votre application Info.fichier plist et de fournir une fin de chaîne pour cette clé. Si votre application tente d'accéder à des contacts de l'utilisateur sans correspondant but de chaîne, votre application se ferme.

8voto

Aleksey Mazurenko Points 426

Il manquait la clé NSFaceIDUsageDescription dans mon application.

6voto

Birowsky Points 746

En bref, les descriptions d'utilisation doivent être spécifiées dans *info.plist

Ce n'est pas bon pour Cordova Codebase car les fichiers .plist ne font pas partie du référentiel. La manière la plus simple que j'ai trouvée de les placer dans config.xml est la suivante:

  1. Installez cordova-custom-config
  2. Ajoutez les éléments suivants dans config.xml:

.

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

6voto

Cliff Ribaudo Points 4289

Mon Info.plist manquait NSPhotoLibraryAddUsageDescription. Il y a maintenant DEUX autorisations associées à la bibliothèque de photos (à partir d'iOS 11):

  • NSPhotoLibraryUsageDescription - pour accéder à la bibliothèque de photos
  • NSPhotoLibraryAddUsageDescription - écrire seulement la permission de la bibliothèque de photos

J'ai eu la première autorisation préalable pour iOS 11, lorsqu'elle était la seule clé nécessaires à l'utilisation de la bibliothèque de photos. Apparemment dans iOS 11 ils ont ajouté le deuxième et le fait-il nécessaire d'ajouter des photos à la bibliothèque. Donc, si vous soutien iOS 10, mais ne comprennent pas la deuxième clé, vous crash sur iOS 11.

Toutes les Clés sont Ici

4voto

Chase Roberts Points 717

Pour moi, j'ai essayé de demander l'accès à la micro, mais je n'avais pas défini l' Privacy - Microphone Usage Description chaîne de caractères.

Allez dans votre Info.fichier plist, et faites défiler vers le bas pour les valeurs qui commencent par Privacy. Assurez-vous d'ajouter des clés et des valeurs de chaîne pour tout ce qui est pertinent à votre application.

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X