Mes documents Core Data ne reconnaissent pas leur application

colas_colas_ Membre
juin 2013 modifié dans API AppKit #1

Bonjour !


 


Voici le petit problème auquel je suis confronté :


 


-> J'ai fait pour m'entraà®ner une application document-based et Core Data, appelons-la Appli_A


 


-> Puis, j'ai commencé le développement d'une deuxième application document-based et Core Data, c'est Appli_B. Je ne sais plus trop mais je crois que pour le développement d'Appli_B j'ai tout repris de zéro (c'est-à -dire je n'ai pas copié Appli_A pour la modifier).


 


 


Mon problème : si je crée un document avec Appli_B et que je l'enregistre. Si après j'essaie de double-cliquer dessus, il essaie de s'ouvrir avec Appli_A !!! (et il n'y arrive pas). Si je passe par Appli_B et le menu "Ouvrir...", là , ça marche bien. 


 


 


Il doit y avoir un problème dans les paramètres, mais je ne sais pas trop lesquels mettre et j'ai du mal à  trouver des infos sur le web. En fait, je voulais m'occuper aujourd'hui de gérer le type de document (je pense que je ne vais garder qu'un seul type parmi XML, binary et SQLite, etc.) Est-ce que vous avez des tutos en ligne ou ce genre de ressources à  me conseiller ?


 


Merci et bonne journée !


Réponses

  • AliGatorAliGator Membre, Modérateur
    juin 2013 modifié #2
    Regarde dans la liste des Document Types que tu as déclaré pour ton projet.

    Si tu as laissé les types par défaut (qui doivent avoir des valeurs d'exemple certainement et donc que c'est les mêmes pour les 2 applis) du coup c'est normal, ça veut dire que tu auras déclaré que ton Appli_A sait ouvrir les fichiers de type "com.appli.doc" avec l'extension ".doca" mais aussi que ton Appli_B sait ouvrir les mêmes documents... du coup pour lui les 2 applis produisent et savent ouvrir les mêmes documents. Normal que même si tu double-cliques sur un document même produit par Appli_B, pour lui Appli_A aura aussi déclaré pouvoir ouvrir ces types de documents donc il va l'ouvrir avec.

    Pour changer ça, sélectionne ton projet dans le Project Navigator à  gauche, puis sélectionne ta Target, et va dans l'onglet "Info". Tu auras dans cet onglet un résumé des clés du Info.plist, mais également une interface pour rajouter ou modifier facilement les "Document Types" à  cet Info.plist (donc de ton appli). Il suffit d'en mettre des suffisamment distinctifs pour différencier les documents de Appli_A de ceux de Appli_B.
  • colas_colas_ Membre
    juin 2013 modifié #3

    Merci pour ta réponse Ali.


     


    En fait, comme c'est une appli Core Data, j'ai automatiquement ceci :


  • Hello,


     


    Tu laisses l'identifier tranquille et tu définis l'extension. Par exemple "appliA" ou "appliB" selon ton application.


     


    L'application A crée des documents (sqlite, XML ou binary) du genre "monDocument.appliA" qui seront ouvert uniquement par l'application A. Idem pour l'application B.


  • Hello Berfis,


     


    ta solution marche parfaitement !


Connectez-vous ou Inscrivez-vous pour répondre.