2010-03-01 6 views
1

Comment stocker des informations dans l'iPhone afin qu'elles ne puissent pas être supprimées lorsque l'application est supprimée. Par exemple pour indiquer si l'utilisateur a déjà utilisé toutes les fonctionnalités d'évaluation. J'ai essayé d'utiliser [NSUserDefaults standardUserDefaults] - mais il s'est actualisé chaque fois que l'application est supprimée.Magasin de données permanentes iPhone

+1

Si vous avez des fonctions d'essai, vous vous trompez. Au lieu de cela, offrez une copie gratuite de l'application et utilisez les achats in-app pour débloquer votre fonctionnalité "pro". – bpapa

+0

En outre, tout essai d'utilisation ou de limitation du temps sera rejeté par les évaluateurs App Store. –

Répondre

3

Certaines applications gèrent cela en récupérant l'identifiant unique du périphérique (UDID) et en le stockant sur leurs serveurs. Si le serveur voit le même UDID deux fois à partir de l'étape de validation de l'application, refusez la validation.

+0

Je ne pense pas que cela volerait avec les critiques App Store, cependant. –

4

Apple ne vous autorise pas à le faire. Si les applications peuvent laisser des fichiers après leur désinstallation, vous pouvez faire en sorte que votre disque ne puisse plus se débarrasser du contenu.

2

Je pense qu'il est possible de stocker ces données dans le trousseau, voir this forum. Je pense aussi que c'est mal de faire une telle chose, que vous combattez l'utilisateur, mais c'est votre choix.

2

Votre meilleur pari ici est probablement de stocker des données sur un serveur, en associant l'UDID de l'appareil avec toutes les informations que vous souhaitez stocker. Pour obtenir le UDID, faites ceci:

NSString *udid = [[UIDevice currentDevice] uniqueIdentifier]; 

Si vous ne voulez pas configurer un serveur vous-même, vous pouvez utiliser ce service pratique je l'ai essayé à Parse appelé: http://www.parse.com/ Vous serez en mesure d'utiliser leurs SDK natifs pour stocker des données dans leur service cloud, puis les récupérer. Vous devriez être capable de simplement stocker l'udid avec l'un de leurs objets, puis le récupérer avec une requête.

Questions connexes