53 votes

"Lecture des paramètres utilisateur effectifs publics" dans iOS 10

Je reçois les messages suivants lors du lancement de mon application :

2016-10-12 14:47:23.705002 Discovery[377:147958] [MC] System group container for systemgroup.com.apple.configurationprofiles path is /private/var/containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles
2016-10-12 14:47:23.712212 Discovery[377:147958] [MC] Reading from public effective user settings.

Le "conteneur de groupe système" est-il lié aux groupes d'applications ? Je partage des données entre les applications à l'aide d'un groupe d'applications et je me demandais si cela avait provoqué l'affichage de ce message ?

J'ai défini les données dans une application comme ceci :

var userDefaults = NSUserDefaults(suiteName: "group.com.company.myApp")
userDefaults!.setObject("user12345", forKey: "userId")
userDefaults!.synchronize()

Et je le récupère dans une autre application en utilisant quelque chose comme ça :

var userDefaults = NSUserDefaults(suiteName: "group.com.company.myApp")
if let testUserId = userDefaults?.objectForKey("userId") as? String {
  print("User Id: \(testUserId)")
}

Est-ce que quelque chose a changé dans iOS 10 qui pourrait causer des problèmes ou provoquer l'apparition de ces messages ?

0 votes

Quelles erreurs ? Il n'y a pas d'erreurs dans votre question, juste des messages de débogage ennuyeux affichés dans iOS 10.

0 votes

0 votes

C'est vrai. Je vais modifier ma question pour refléter cela. Je suppose que la question est de savoir pourquoi ces messages s'affichent alors que j'essaie de comprendre pourquoi mes applications ne partagent pas les données correctement.

94voto

tymac Points 7397

Il s'agit d'un bogue (nous découvrons maintenant qu'il pourrait s'agir d'un message permanent) et il semble que ce message apparaisse principalement lorsque l'on clique sur un champ de texte ou une vue de texte ou tout autre NSObject similaire.

Il s'agit uniquement d'un message de journal et non d'un message d'erreur de compilation, comme en témoignent la date et l'heure qui précèdent le message. Par conséquent, si votre code ne fonctionne pas, ce n'est pas à cause de ce message de la console.

Si vous exécutez sur un appareil, le message sera le suivant [MC] Reading from public effective user settings . Si vous exécutez sur le sim, le message sera le suivant [MC] Reading from private effective user settings .

1 votes

Merci Tymac. Je vois ce message sur un appareil lorsque j'exécute Xcode 8.1. De plus, comme vous l'avez décrit, ce message s'affiche lorsque je tape sur un bouton de l'appareil. UISearchbar's UITextField . De plus, comme vous l'avez décrit, je ne vois rien dans mon projet qui soit affecté par ce message ou le déclenchement de cet événement.

0 votes

Content d'avoir pu aider. Bonne journée.

0 votes

Je me tapais la tête avec ça en pensant qu'il y avait un problème avec mon code. tymac a raison. Ce n'est qu'un message de bogue/journal et il ne peut pas être corrigé tant que nous ne sortons pas de la version bêta. C'est la bonne réponse avec 10 votes et pourtant elle n'est pas marquée comme la bonne réponse ? Bizarre.

29voto

Vinoth Vino Points 2715
  • Aller à Xcode -> Product -> Scheme -> Edit Scheme
  • Dans le Environment Variables , ajouter OS_ACTIVITY_MODE comme nom et disable comme valeur.

screenshot

J'espère que cela vous aidera.

2 votes

Cela a été utile. Merci.

0 votes

Codage heureux.. @fmz

34 votes

Cela n'a pas été utile, cela a juste désactivé toute la journalisation dans la console.

6voto

Tony Points 80

Xcode semble être rempli de ces avertissements déroutants et trompeurs. Cet avertissement apparaît chaque fois que j'entre du texte dans un UITextField, au début j'ai pensé qu'il y avait un problème avec mes codes.

1 votes

Xcode est absolument plein de bizarreries et de bogues. Il y en a toujours un nouveau que vous n'avez pas vu, mais ils sont rares et espacés que vous finissez par oublier les solutions, ce qui vous fait perdre encore plus de temps... Malheureux.

1voto

Flipper Points 654

Est-ce que votre prochaine sortie dans la console est comme ceci : [access] <private> . J'ai eu vos avertissements, il me manquait la permission d'utiliser la caméra dans mon fichier plist. Privacy - Camera Usage Description . Vous avez besoin de la description de la vie privée dans la liste pour laquelle vous utilisez la vie privée : Contacts, Calendar, Reminders, Photos, Bluetooth Sharing, Microphone, Camera, Location, Health, HomeKit, Media Library, Motion, CallKit, Speech Recognition, SiriKit, TV Provider

0 votes

Oui, j'ai essayé de les définir tous et ça n'a pas fait disparaître l'avertissement. Je n'ai pas non plus eu [access] <private> après mon message d'avertissement, donc peut-être que j'ai juste un problème différent ?

0voto

Je luttais avec ce problème dans un émulateur iPhone5 (sur l'appareil tout était ok) qui bloquait mon application Ionic après avoir touché un TextInput, et puis j'ai changé l'émulateur à un autre, comme iPhone6, ou iPhone8, et tout a fonctionné à nouveau.

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