Utilisation de la iOS 10.0
dernière version bêta. J'avais essayé d'utiliser Appareil photo pour scanner le code-barres dans mon application, et il s'est écrasé avec cette erreur d'exécution.
Cette application est tombée en panne, car elle a tenté d'accéder à des données sensibles à la confidentialité sans description d'utilisation. Le fichier Info.plist de l'application doit contenir une clé NSCameraUsageDescription avec une valeur de chaîne expliquant à l'utilisateur comment l'application utilise ces données.
Mettez cette clé dans le plist, mais il s'est toujours écrasé?
Réponses:
Après iOS 10, vous devez définir et fournir une description d'utilisation de toutes les données sensibles à la confidentialité du système auxquelles votre application accède dans Info.plist comme ci-dessous:
Calendrier
Rappel :
Contact :
Photo:
Partage Bluetooth:
Microphone :
Caméra :
Emplacement :
Heath:
AccueilKit:
Médiathèque :
Mouvement :
Reconnaissance de la parole :
SiriKit:
Fournisseur de télévision:
Vous pouvez obtenir des informations détaillées dans ce lien.
la source
Privacy - Photo Library Usage Description
l'a fait pour l'erreurNSPhotoLibraryUsageDescription
Comme Apple a changé la façon dont vous pouvez accéder à tous les types de données privées des utilisateurs dans
iOS 10
.Vous devez ajouter la
Privacy - Camera usage description
clé " " à votre applicationInfo.plist
et ses informations d'utilisation qui s'appliquent à votre application, comme dans l'exemple ci-dessous que j'avais fourni que j'ai utilisé pour scanner les codes à barres.Pour plus d'informations, veuillez trouver la capture d'écran ci-dessous.
la source
Vous devez ajouter cette clé ci-dessous dans info.plist.
NSCameraUsageDescription
OuPrivacy - Camera usage description
Et ajoutez une description de l'utilisation.
Des captures d'écran détaillées sont disponibles dans ce lien
la source
Vous pouvez également ouvrir Info.plist en tant que code source et ajouter ceci:
la source
"NSCameraUsageDescription" = "Requires access to the camera";
dans votre fichier infoPlist.strings localiséUtilisez ces valeurs brutes et copiez-les dans info.plist
la source
l'interface utilisateur xcode a un peu changé d'une version à l'autre, voici donc où vous mettez à jour le plist pour la version 9.0 beta 4 si cela aide Projet -> Cible -> Info
la source
<key>NSCameraUsageDescription</key>
à info.plist .<key>NSCameraUsageDescription</key>
au deuxième info.plist fichier , mais sans effet, et je peux confirmer que XCode (10.1) ne prend certainement pas en compte ces changements en exécutant git status , parce que mon info.plist pour une autre cible n'a pas changé. Donc, la bonne façon est de passer par le projet-> Cible-> Info . Merci mec!Un autre exemple auquel j'ai été confronté en essayant d'utiliser la caméra était qu'il était encore occupé à planter,
_CRASHING_DUE_TO_PRIVACY
même après avoir ajouté la "Description de l'utilisation de la caméra". Après avoir échoué à obtenir quoi que ce soit de tangible de la pile d'appels, est passé à l '"Organisateur" et a examiné les rapports de plantage sur l'appareil. J'ai trouvé qu'il se plaignait en fait de la confidentialité en raison de l'absence de "Description de l'utilisation du microphone". J'ai ajouté cela et je me suis débarrassé d'une telle panne cryptique.la source
Pour ceux qui obtiennent toujours l'erreur même si vous avez ajouté les clés appropriées dans Info.plist:
Assurez-vous d'ajouter la clé dans le fichier Info.plist correct. La nouvelle version de xCode a apparemment 3 Info.plist.
L'un se trouve sous le dossier avec le nom de votre application, ce qui a résolu le problème pour moi.
Le deuxième est sous YourappnameTests et le troisième sous YourappnameUITests.
J'espère que ça aide.
la source
Si vous utilisez Ionic, vous pouvez le résoudre directement à partir de config.xml en ajoutant une balise ios à l'intérieur de la plateforme:
Je voudrais également remercier la réponse @BHUPI.
la source
Pour ce faire, ajoutez une clé d'utilisation à Info.plist de votre application avec une chaîne d'objectif. NSCameraUsageDescription Spécifie la raison pour laquelle votre application accède à la caméra de l'appareil
https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html
la source
J'ai vérifié le plist et j'ai trouvé qu'il ne fonctionnait pas, seulement dans les informations "projet", vous devez ajouter le "Confidentialité - Caméra ....", alors cela devrait fonctionner. J'espère vous aider.
la source
J'ai eu le même problème et je n'ai pas pu trouver de solution. Mark90 a raison, il y a beaucoup de fichiers info.plist et vous devriez éditer le bon. Allez dans Projet, sous TARGETS, sélectionnez le projet (pas les tests), dans la barre d'onglets, sélectionnez Info et ajoutez l'autorisation sous " Propriétés de la cible iOS personnalisée ".
la source