Subiect partajat și acțiuni 3

SharedObject și ActionScript 3.0

După cum am menționat deja. În ActionScript, clasa SharedObject ("obiect partajat" sau "obiect partajat") este utilizată pentru a stoca date pe computerul sau serverul utilizatorului. În acest caz, obiectele comune există în două varietăți:

1.) Obiectele partajate de la distanță (RSO), care în activitatea lor utilizează tehnologii server.

2.) Obiecte comune partajate (LSO) care stochează date direct pe computerul clientului.

Obiectele LSO sunt stocate într-un director special pe computerul utilizatorului ca fișiere binare cu extensia .sol. Calea către aceste fișiere depinde de OC utilizat, iar fișierele însele pot fi ascunse. Dar dacă găsim dosarul și fișierul dorit, vom vedea ceva de genul:

Un aspect important este că dimensiunile LSO sunt limitate. Dimensiunea obiectelor locale partajate depinde de utilizator, care poate crește atât dimensiunea de stocare, cât și să reducă sau chiar să interzică complet stocarea datelor pe computerul local. Accesul la setările de stocare locale este disponibil prin meniul contextual al playerului flash.

Îndreptați cursorul pe ecranul playerului flash și apăsați butonul din dreapta al mouse-ului. Dacă dimensiunea fișierului swf este de cel puțin 215 x 138 pixeli, atunci va apărea un meniu contextual (poate diferi pentru diferitele versiuni ale playerelor flash):

Subiect partajat și acțiuni 3

În meniul contextual, selectați PARAMETRI. Apare o casetă de dialog în care puteți configura un număr de parametri importanți ai playerului flash. O filă separată este dedicată configurării spațiului de stocare Flash Player local.

Subiect partajat și acțiuni 3

Lucrul cu obiectele locale partajate în ActionScript 3.0 este la fel de simplu ca ActionScript 2.0.

Codul ActionScript 3.0:

/ * Creați (dacă nu este deja creat) sau deschis (dacă există deja pe computerul utilizatorului) LSO. Metoda getLocal () are doi parametri importanți: 1. numele pentru LSO dat; 2. calea locală spre LSO. * / var astfel: SharedObject = SharedObject.getLocal ("edapskov", "/"); / * Obiectul LSO are proprietatea de date, în care sunt stocate variabilele. Prin urmare, pentru salvarea datelor folosim codul formularului: object_LSO.data.variable = value; În LSO, puteți stoca obiecte de diferite tipuri de date. * / So.data.myVarBoolean = true; // salva tip variabilă Boolean so.data.myVarInt = -10; // salva tipul variabila int so.data.myVarUint = 10; // salva uint so.data.myVarNumber tip variabil = 10,256; // salva variabila de tip Number so.data.myVarString = "Alexander"; // salva variabila de tipul String so.data.myVarArray = [ 'Bakunin', 'Proudhon', 'Stirner']; // salva matrice asa .data.myVarDate = nouă dată (); // salva dată so.data.myVarObject =; // a salva obiectul / * Flash player stochează automat datele LSO de pe computerul utilizatorului, dar încă în orientările lingvistice în ceea recomanda a face acest lucru în mod explicit utilizând metoda flush (). * / so.flush (); / * Citirea datelor din LSO. * / trace ("Valorile variabilelor stocate în LSO:"); urmări (so.data.myVarBoolean); urmarire (asa data.myVarInt); urmări (so.data.myVarUint); urmări (so.data.myVarNumber); urmări (so.data.myVarString); urmă (so.data.myVarArray); urmări (so.data.myVarDate); trace (so.data.myVarObject.first_name + '' + so.data.myVarObject.last_name); / * Aflați dimensiunea LSO în octeți. * / trace ("LSO size:" + so.size + "octeți");

Deși un apel simplu la metoda flush () este de obicei suficient pentru a scrie explicit un obiect partajat pe hard disk, un număr de manuale recomandă verificarea acestui proces. Deci, "ActionScript 3.0: O colecție de rețete". propune construirea următoarei forme:

Pentru a șterge un obiect comun partajat din informațiile stocate în el, este suficient să apelați metoda clear ():

LSO este un mecanism destul de convenabil pentru stocarea informațiilor pe partea clientului. Principalele sale avantaje sunt:

- stocarea de volume mari de informații;

- stocarea informațiilor fără limite de timp (ca în cookie-uri);

- stocarea diferitelor tipuri de informații.

Există dezavantaje. Principalul dezavantaj al obiectelor locale comune pentru dezvoltatorii flash este dependența completă de voința utilizatorului, care poate interzice chiar utilizarea LSO de către playerul flash. Cu toate acestea, aceasta este o opinie subiectivă :-)

Articole similare