Bonjour, je cherche a utiliser SharedObject afin de stocker des données utilisateur.
Ce qui est stocké sera un object personnel (pas un Array, String ou autres...)
L'object sotcké possede des méthodes, et je veux pouvoir les utiliser quand je récupere mon object...
Donc voilà quelques ligne de code pour expliciter mon besoin...mon probleme
Ma classe qui sera stocké dans un sharedObject:
Action Script
voir codecopier dans le presse papierimprimer?
class tbm_.asfrk_.util_.wallet_.FakeWallet {
public var mMyString : String;
public function FakeWallet()
{
this.mMyString = "MEDIABOX";
}
public function getMyString() : String
{
return this.mMyString;
}
Code appellé dans un main:
var so : SharedObject = SharedObject.getLocal("WalletManager");
trace("SharedObject length : " + so.getSize());
if (so.data.myWalletManager == null)
{
var aFakeWallet : FakeWallet = new FakeWallet();
so.data.myText = "teamlogData";
so.data.myWalletManager = aFakeWallet;
trace("[INIT]FakeWallet MyString =" + FakeWallet(so.data.myWalletManager).getMyString());
trace("[INIT]SharedObject size =" + so.getSize());
so.flush();
}else{
trace("FakeWallet = " + so.data.myWalletManager);
var aWallet : FakeWallet = FakeWallet(so.data.myWalletManager);
trace("[AFTER] FakeWallet MyString = " + FakeWallet(so.data.myWalletManager).mMyString);
trace("[AFTER] FakeWallet aWalletRegistered = " + FakeWallet(so.data.myWalletManager).getMyString());
trace("[AFTER] FakeWallet MyString2 = " + aWallet.mMyString);
}
Résultat apres exécution :
TRACE: SharedObject length : 5
TRACE: [INIT]FakeWallet MyString = MEDIABOX
TRACE: [INIT]SharedObject size =69
TRACE: SharedObject length : 69
TRACE: FakeWallet = [object Object]
TRACE: [AFTER] FakeWallet MyString = MEDIABOX
TRACE: [AFTER] FakeWallet aWalletRegistered =
TRACE: [AFTER] FakeWallet MyString2 =
Conclusion et questions : Lors du deuxieme passage dans le Main, le sharedObject fait la meme taille que quand il a été stocker, l'object stocké existe tjrs.
Mais pourquoi la methode getMyString ne renvoie rien ?
Mon object aurai t'il perdu son typage ?
L'acces direct a l'attribut public fonction mais impossible d'utiliser le getter getMyString();
Ceci un exemple et je souhaite moi utiliser des getters et setters sur un object stocké dans un sharedObject
je suis dans le flou là, avez vous une explication, merci
Partager