Ajouter des fichiers à un projet Xcode à partir d'un script?



scripting project (4)

Fondamentalement, les fichiers doivent simplement être copiés dans le paquet principal

Dans ce cas, ajoutez simplement une référence de dossier au projet (créez un dossier dans votre dossier de projet, puis faites-le glisser dans le groupe "Ressources" de votre projet (dans la liste "Fichiers et groupes"; sélectionnez ensuite le dossier "Créer"). "Dossier" pour tout dossier ajouté "et" Xcode "copiera le dossier et tout son contenu dans le groupe cible au moment de la création.

Juste une remarque supplémentaire: Si vous utilisez cette méthode pour ajouter des sous-dossiers d’images, vous devez préfixer le nom de l’image avec le nom du sous-dossier pour utiliser '[UIImage imageNamed:]'. Par exemple, si vous avez une image nommée "Rendezvous.png" dans un sous-dossier nommé "Mes images":

`

// this won't work
UIImage * image = [UIImage imageNamed:@"Rendezvous"];
if (image) {
    NSLog(@"Found Rendezvous!");
} else {
    NSLog(@"Didn't find Rendezvous.");
}

// but this will!
image = [UIImage imageNamed:@"MyImages/Rendezvous"];
if (image) {
    NSLog(@"Found MyImages/Rendezvous!");
} else {
    NSLog(@"Didn't find MyImages/Rendezvous.");
}

`

https://ffff65535.com

À l’heure actuelle, j’utilise quelques scripts pour générer des fichiers que j’inclus en tant que ressources dans Xcode. Le problème est que je suis en train d'exécuter le script, puis de le supprimer puis de le rajouter dans le projet. Il doit y avoir un moyen d'automatiser cette dernière étape, afin que le script puisse générer les fichiers et les ajouter automatiquement dans le projet xcode pour moi.

J'utilise bash mais tout exemple de langue pourrait aider.

Merci Andrew


Cela peut être fait en ajoutant une nouvelle phase de construction à votre application.

  1. Dans le navigateur de votre projet Xcode, recherchez la cible de votre application et développez-la pour afficher toutes les phases de construction.

  2. Ajoutez une nouvelle phase de construction "script d'exécution" à votre cible. La méthode la plus simple consiste à cliquer avec le bouton droit sur la cible et à choisir "Ajouter / Nouvelle phase de construction / Nouvelle phase de construction du script d'exécution".

  3. L'ajout de la nouvelle phase de construction devrait ouvrir une fenêtre d'inspecteur. Dans cette fenêtre, vous pouvez entrer le script shell complet ou simplement une ligne de commande pour exécuter le script.

  4. Voici l'or: Au bas de la fenêtre de l'inspecteur, vous pouvez spécifier les fichiers d'entrée et les fichiers de sortie. La spécification des fichiers d'entrée configure automatiquement les dépendances (le script shell ne sera exécuté que si certains des fichiers d'entrée ont été modifiés). La spécification des fichiers de sortie propage automatiquement les dépendances à ces fichiers. Lors de l'exécution de votre script shell, Xcode sait qu'il doit traiter les fichiers modifiés par le script shell.

  5. Assurez-vous de faire glisser votre nouvelle phase de construction vers le haut de la liste, comme indiqué dans la capture d'écran ci-dessous. L'ordre sera important si vous avez besoin que ces fichiers de ressources soient inclus dans le paquet.

  6. Sauvegardez, construisez, engagez-vous dans le référentiel, demandez une augmentation, prenez l'air et passez une bonne journée! :)


Je sais que c'est un peu tard, mais je viens de trouver cet article qui explique comment faire quelque chose qui ressemble à ce que vous recherchez.


Pour ceux qui ont un grand nombre de fichiers, pour éviter d'avoir à recopier (ou revérifier) ​​chaque fichier, comme suggéré par @Ben Cochran (merci beaucoup pour le bon script), voici comment procéder avec rsync:





project