2010-11-30 18 views
2

J'ai créé un ensemble de paramètres et Root.plist. Lorsque je lance mon application à l'aide de la version Release | iPhoneSimulator, je peux voir et modifier mes paramètres dans l'application "Paramètres", comme prévu. Toutefois, lorsque j'exécute mon application en mode Débogage | iPhoneSimulation, mes paramètres sont supprimés et remplacés par les paramètres du débogueur. Est-il possible de conserver mes paramètres Root.plist d'origine lors du débogage?Paramètres de l'application Root.plist manquants lors du débogage

Je dois faire quelque chose de stupide parce que je ne trouve aucune référence à quelqu'un d'autre ayant ce problème.

Merci.

Répondre

0

Il peut s'agir d'un problème de sensibilité à la casse. MonoDevelop fusionne les paramètres de débogage dans vos fichiers de paramètres, s'il trouve un fichier nommé Settings.bundle/Root.plist marqué comme contenu dans le projet, mais cette vérification est sensible à la casse. S'il ne trouve pas ce fichier (par exemple, votre fichier de configuration est différemment traité), MD créera simplement un nouveau fichier de paramètres, mais le système de fichiers insensible à la casse Apple considèrera les noms de fichiers comme étant les mêmes. finissez par écraser le vôtre dans le paquet de l'application.

+0

Dans mon cas, le dossier est nommé "Settings.bundle" et le fichier est "Root.plist". Il est marqué comme "Contenu" et "Toujours copier". – johnthom

+0

Voici à quoi ressemble mon plist racine si je le recopie sous forme de fichier texte .... { \t PreferenceSpecifiers = ( \t \t { \t \t \t Titre = "Titre optionnel", \t \t \t Type = PSGroupSpecifier; \t \t}, \t \t { \t \t \t Type = PSTextFieldSpecifier; \t \t \t Titre = ImageServer; \t \t \t Clé = imageServer; \t \t \t "AutocapitalizationType" = Aucun; \t \t \t AutocorrectionType = No; \t \t}, { \t \t \t \t \t Type = PSTextFieldSpecifier; \t \t \t Titre = Port; \t \t \t Légende = port; \t \t}, \t); } – johnthom

0

On dirait que les exemples que j'ai utilisés pour comprendre comment faire cela sont faux.

Pour résoudre le problème, j'ai supprimé le Root.plist, puis l'ai ajouté à nouveau en faisant une liste de propriétés Add..New File .... Une fois que j'ai ajouté mes paramètres personnalisés à cette opération, tout a commencé à fonctionner. Donc, si vous voyez des exemples (tels que celui-ci, http://conceptdev.blogspot.com/2009/08/monotouch-settingsbundle.html) où ils vous disent de créer manuellement un fichier XML, puis de le renommer en Root.plist, ne le faites pas. Ça ne marche pas.

+0

De même, il n'est pas nécessaire de régler "Copier dans le répertoire de sortie" sur "Toujours copier" car j'ai lu plusieurs fois. Laissez-le réglé sur "Ne pas copier". – johnthom

+0

Et définissez l'action de construction sur "Contenu". – johnthom

+0

Il y a encore un problème cependant ... Maintenant que mes paramètres apparaissent dans l'application des paramètres, mon application ne peut pas y accéder. Renvoie toujours un null. J'ai téléchargé et essayé d'autres applications de démonstration qui utilisent les paramètres et ont le même résultat. Donc, quelque chose est foiré sur Monotouch ou la mise à jour 4.2 a cassé quelque chose. Je n'ai aucune idée. – johnthom