2017-07-11 1 views
2

Je reçois l'erreur suivante en essayant de demander l'autorisation de l'utilisateur pour l'emplacement dans Xcode 9 Beta. J'ai essayé d'ajouter "Confidentialité - Emplacement en cours d'utilisation Description de l'utilisation" et "Confidentialité - Description de l'utilisation de l'emplacement" description dans info.plist mais toujours obtenir la même erreur.Impossible d'ajouter "Confidentialité - Localisation Toujours et Quand utilisation description d'utilisation" dans info.plist - Xcode 9 Beta

Cette application a tenté d'accéder à des données sensibles à la confidentialité sans description d'utilisation . La Info.plist de l'application doit contenir à la fois NSLocationAlwaysAndWhenInUseUsageDescription et touches NSLocationWhenInUseUsageDescription avec les valeurs de chaîne expliquant à l'utilisateur comment l'application utilise ces données

Quand j'essaie d'ajouter « Confidentialité - Emplacement toujours et quand dans l'utilisation de l'utilisation description » il est automatiquement renommé se "confidentialité - Lieu Utilisation Description" dans info.plist

+4

Cela ressemble à un bogue - Ouvrez le info.plist dans la vue source et ajoutez la clé de cette façon – Paulw11

+0

Comment ajoutez-vous les entrées dans info.plist? –

+1

Avez-vous bien copié le message d'erreur? Selon https://developer.apple.com/library/content/qa/qa1937/_index.html, il y a NSLocationAlwaysUsageDescription et NSLocationWhenInUseUsageDescription, mais pas NSLocationAlwaysAndWhenInUseUsageDescription. –

Répondre

1

Ajouter "NSLocationAlwaysAndWhenInUseUsageDescription" au lieu de "Confidentialité - Emplacement Toujours et Quand utilisé description d'utilisation". Dans la version bêta actuelle, il ne sera pas renommé quoi que ce soit, mais il montre la boîte de dialogue correct pour iOS 11.

1

Voir https://developer.apple.com/documentation/corelocation/choosing_the_authorization_level_for_location_services/request_always_authorization?language=objc

Fondamentalement, il dit que vous devez inclure les clés NSLocationWhenInUseUsageDescription et NSLocationAlwaysAndWhenInUsageDescription dans Info de votre application. fichier plist. (Si votre application prend en charge iOS 10 et les versions antérieures, la clé NSLocationAlwaysUsageDescription est également requise.) Si ces clés ne sont pas présentes, les demandes d'autorisation échouent immédiatement. J'utilise actuellement Xcode Version 9.0 beta 5 (9M202q) et cela fonctionne sans problèmes.

1

Note importante: Il est

NSLocationAlwaysAndWhenInUseUsageDescription,

pas

NSLocationAlwaysAndWhenInUsageDescription.

Apple a fait une faute de frappe dans son Request Always Authorization guide (Derniers visités: 20 septembre 2017).