2010-05-11 1 views
3

Est-il possible de mettre à jour un fichier stocké dans un ensemble d'applications par programmation? Fondamentalement, je veux obtenir un fichier distant et écraser l'un des fichiers bundle avec lui (une base de données sqlite en fait).Pouvez-vous mettre à jour un fichier dans le lot d'applications?

Cela fonctionne très bien sur le simulateur, mais sur le périphérique, il ne fonctionne pas, mais il ne pas erreur non plus (il ne semble pas réellement écraser). Je sais que je peux contourner le problème en le copiant à la place du dossier utilisateur, puis en demandant au code de vérifier d'abord le fichier avant d'utiliser le paquet, mais je voulais savoir s'il était possible de mettre à jour un paquet fichier du tout ou suis-je juste faire quelque chose de mal?

Remerciements

Répondre

4

Non, la liasse ne peut pas être mise à jour. Les éléments de l'ensemble sont emballés avec l'application et l'application est signée numériquement afin de pouvoir être revendue via l'App Store. En modifiant le contenu du bundle, la signature numérique ne correspond plus.

0

Cela ne fonctionnera probablement pas car les ensembles d'applications déployés sont cryptographiquement signés par Apple (même pendant le développement). Vous n'êtes pas autorisé à les changer.

+0

Je pense que la signature cryptographique est seulement pour le binaire compilé de l'application et non pour les fichiers de données. Dans notre travail, nous modifions les fichiers dans le dossier de l'application après la compilation, avant de créer un fichier IPA, et nous sommes en mesure d'exécuter l'application avec succès – ishahak

+1

@ishahak l'IPA est signé, pas des fichiers individuels (bien que je pense que le binaire est individuellement signé). Déballez l'IPA (renommer en * .zip helps), éditez l'un des fichiers, remballez-le et voyez si vous pouvez toujours déployer et exécuter l'application. –

Questions connexes