Forum Index > Coș cu teme șterse > Soft > Android Programming

#0 by Nicolae1992 (Power User) (0 mesaje) at 2015-03-17 10:34:17 (542 săptămâni în urmă) - [Link]Top



Android Programing acopera toate conceptele importante ce permit unui programator nou sa invete sa dezvolte aplicatii mobile pentru platforma Android.
Android este o platforma open source pentru dezvoltarea si rularea de aplicatii mobile, dezvoltata de Google si Open Handset Alliance. Initial creata pentru telefoane mobile, Android a devenit o platforma majora de aplicatii pentru o gama larga de dispozitive mobile.

Instrumente necesare si configurare

Eclipse[RU]
Android Studio[EN]
ÎnchideЗакрыть

Pentru a intelege arhitectura unei aplicatii mobile Android este nevoie de un minim de cunostinte cu privire la conceptele cheie ale aplicatiilor Android. Intelegerea acestor elemente va permite programatorului sa controleze:

  • componentele aplicatiei;
  • ciclul de viata al aplicatiei;
  • resursele aplicatiei.
Ciclul de viata al unei Activitati
Ciclul de viata al unei Activitati
Activitatea este una dintre cele mai importante componente (alaturi de servicii si broadcast receivers) ale unei aplicatii Android deoarece este strans legata de interfata cu utilizatorul. O activitate este utilizat pentru a gestiona interfata cu utilizatorul si este echivalenta cu fereastra sau formularul din aplicatiile desktop.

Intelegerea modului in care se controleaza activitatea va permite sa:
  • utilizati ciclul de viata al activitatii pentru a crea, vizualiza, utiliza si a opri activitatile;
  • salvati datele utilizatorului inainte ca activitatea sa fie oprita si le restaurati atunci când activitatea este readusa in prim-plan;
  • creati aplicatii cu mai multe formulare sau activitati;
Ciclului de viata al unei Activitati descrie starea in care o activitate poate fi la un moment dat (denumirele sunt lasate intentionat in Engleza deoarece fac parte din vocabularul programatorului:

Running - Activitatea a fost creata (onCreate()), pornita (onStart()) si este afisata pe ecranul aparatului; in cazul in care activitatea a mai fost utilizata si aplicatia a salvat starea acesteia (onSaveInstanceState()), activitatea este reluata din acel punct (onRestoreInstanceState() si onResume()); in aceasta stare utilizatorul interactioneaza cu activitatea prin intermediul interfetei dispozitivului (tastatura, touchscreen, display);

Paused - Activitatea pierde prim-planul (onPause()), deoarece o alta activitate este executata, cum ar fi o fereastra de dialog; de asemenea, in cazul in care aparatul intra in modul sleep, activitatea este oprita temporar; activitatea isi poate relua executia (onResume()) si este plasata inapoi in prim-plan;

Stopped – Activitatea nu este mai in uz si pentru ca este oprita (onStop()) nu este vizibila; pentru a fi reactivata (ea deja exista), activitatea trebuie sa fi repornita (onRestart() si onStart()) si reluata (onResume());

Destroyed – Activitatea este distrusa (onDestroy()) si memoria sa eliberat, deoarece nu mai este necesara sau sistemul are nevoie de memorie suplimentara pentru rutinele proprii sau pentru alte activitati; deoarece managementul memoriei este un aspect important pentru sistemul de operare Linux al dispozitivului mobil, procesul care gazduieste o activitate intrerupta, oprita sau distrusa, poate fi terminat pentru a elibera memorie pentru noi activitati; doar procesele ce gestioneaza activitati ce ruleaza sunt protejate;



Dupa cum se poate observa in imaginea anterioara, Activitatea are mai multe stari intre care exista tranzitii clare. In ciuda faptului ca lucrurile pot arata complicat, in realitate ele sunt mult mai simple daca ne concentram pe urmatoarele elemente:

  • o singura Activitatea poate fi in prim-plan la un moment dat;
  • doar sistemul gestioneaza starile si tranzitiile unei Activitati si NU programatorul (nu in mod direct, deoarece atunci când se lanseaza o activitate noua se modifica implicit starea activitatii curente)
IMPORTANT ! sistemul va anunta atunci când activitatea isi schimba starea prin intermediul handler-elor (metode de forma onXXX()) pentru evenimentele de tip tranzitie; ca programator, puteti adauga propriul cod prin supradefinirea acestor metode:

onCreate(Bundle) – apelata cand activitatea este creata; folosind argumentul metodei de tip Bundle exista posibilitatea sa restabiliti starea activitatii, care a fost salvata intr-o sesiune anterioara; dupa ce activitatea a fost creata, va fi pornita (onStart());

onStart() – apelata in cazul in care activitatea urmeaza sa fie afisata; din acest punct, activitatea poate veni in prim-plan (onResume()) sau ramane ascunsa in fundal (onStop());

onRestoreInstanceState(Bundle) – apelata in cazul in care activitatea este initializata cu datele dintr-o stare anterioara, ce a fost salvata; in mod implicit, sistemul restaureaza starea interfetei cu utilizatorul (starea controalelor vizuale, pozitia cursorului, etc);

onResume() – apelata cand activitatea este vizibila iar utilizatorul poate interactiona cu aceasta; din aceasta stare, activitatea poate fi plasata in fundal, devenind intrerupta (onPause());

onRestart() – apelata in cazul in care activitatea revine in prim-plan dintr-o stare oprita (stopped); dupa aceasta, activitate este pornita (onStart()) din nou;

onPause() – apelata atunci când sistemul aduce in prim-plan o alta activitate; activitatea curenta este mutata in fundal si mai târziu poate fi oprita (onStop()) sau repornita si afisata (onResume()); acesta este un moment bun pentru a salva datele aplicatiei intr-un mediu de stocare persistent (fisiere, baze de date) deoarece dupa aceasta faza activitatea poate fi terminata si distrusa fara a se anunta acest lucru.

onSaveInstanceState(Bundle) – apelata pentru a salva starea curenta a activitatii; in mod implicit, sistemul salveaza starea interfetei cu utilizatorul;

onStop() – apelata in cazul in care activitatea nu mai este utilizata si nu mai este vizibila deoarece o alta activitate interactioneaza cu utilizatorul; din acest punct, activitatea poate fi repornita (onRestart()) sau distrusa (onDestroy());

onDestroy() – apelata in cazul in care activitatea este distrusa, iar memoria sa eliberata; acest lucru se poate intâmpla in cazul in care sistemul necesita mai multa memorie sau daca programatorul termina explicit activitatea apeland metoda finish() din clasa Activity;
ÎnchideЗакрыть

Editat de către Nicolae1992 la 2015-03-17 11:10:45




Mesaj util ?   Da   0 puncte

1
<< Precedenta      Următoarea >>

#1 by tangi91 (Power User) (0 mesaje) at 2015-03-17 11:26:21 (542 săptămâni în urmă) - [Link]Top
http://torrentsmd.com/forum.php?action=viewtopic&topicid=88120586&page=p14275858#14275858


Mesaj util ?   Da   0 puncte

1
<< Precedenta      Următoarea >>

Forum Index > Coș cu teme șterse > Soft > Android Programming

You are not permitted to post in this forum.


Navigare rapidă:


Comunitatea digitală din Moldova. Să adunăm și să organizăm conținutul autohton de pe întreg internet pe un singur site web.