Variable set globale

Bonjour,


 


Je voudrais creer plusieurs variable qui un son accessible n'importe ou dans l'application et de deux qui ne s'efface pas une fois que l'application soit arrete en faite je veut quelle garde leur valeur jusca la prochaine execution de l'application (c'est pour stocker des nom de user et des mot de passe je ne peut donc les metre dans une BDD) ?


 


PS: Merci en tous cas pour vos précédente réponse sur mes autre sujet elle mon beaucoup aidée :)


 


Cordialement bonne journée 


Réponses

  • Si c'est pour des username/password il te faudra sécuriser la chose.... ;)
  • KiraxKirax Membre
    août 2014 modifié #3

    C'est justement pour sécuriser que je ne veut pas les metre dans une BDD mais dans une variable qu'un n'est pas accesible de l'extérieur de l'appli et qui ne s'efface pas quand je ferme cette dernière j'ai travailler sous appcelerator Titanium et sous Titanium on les déclarais de cette façon


     


    Titanium.App.Properties.getString('userName');


     


    Elle n'etait ni dans une BDD ni dans un fichier sur l'idevice le truc c'est que je sait pas comment les creer sous xcode :/


     




     


    5min apres 


     


    PS: je croit que j'ai trouver "@property (retain) NSString *username;" :)


  • j'arrive pas a la rendre global sur toute l'appli :/


  • Joanna CarterJoanna Carter Membre, Modérateur
    août 2014 modifié #5

    Les globals ne sont pas une bonne idée.


     


    Mieux faire un Singleton.


     


    Ou utiliser NSUserDefaults qui est déjà  un Singleton


     


    Ou, afin que les settings soient bien sécurisés, utilises le Keychain https://developer.apple.com/library/mac/documentation/security/conceptual/keychainServConcepts/iPhoneTasks/iPhoneTasks.html




  • Les globals ne sont pas une bonne idée.


     


    Mieux faire un Singleton.




     


    Un singleton n'évite pas les états globaux, au contraire il contribue largement pour ça. Il faut utiliser les singleton avec modération :)

  • en faite les j'ai besoin de faire un truc rapido pour quelle soit fonctionnel ensuite je vais faire un truc propre :/


  • Dans ce cas les NSUserDefaults (+ Keychain) parce que les variables globales c'est vraiment pas une bonne idée ni une bonne pratique.




  • en faite les j'ai besoin de faire un truc rapido pour quelle soit fonctionnel ensuite je vais faire un truc propre :/




     


    Très mauvaise idée !   >:D


    Pourquoi ne pas faire propre du premier coup. Le temps que tu vas perdre à  apprendre à  faire çà  propre du premier coup, tu le retrouveras largement après ! C'est toujours pénible de reprendre un code "plus tard"...


     


    Sinon, j'ai l'impression que ce que tu veux faire ressemble un peu à  ce post.

  • AliGatorAliGator Membre, Modérateur
    Keychain.

    Pour des données à  sécuriser type mot de passe, y'a même pas à  se poser la question, y'a même pas débat.

    On en a déjà  parlé plein de fois sur le forum. Y'a plein de code qui traine sur le net, y'a plein de pods / composants tout faits pour faciliter encore plus l'utilisation et pouvoir stocker une donnée dans la Keychain en 2-3 lignes de code, tu as tout ce qu'il te faut à  portée de main.
Connectez-vous ou Inscrivez-vous pour répondre.