Differences

This shows you the differences between two versions of the page.

Link to this comparison view

eim:laboratoare:laborator02 [2020/02/26 22:12]
madalina.barbu [Coordonarea Activităților]
eim:laboratoare:laborator02 [2022/03/14 09:32] (current)
dan_valentin.bina [Ciclul de Viață al unei Activități]
Line 152: Line 152:
 <note tip>​Distincția între cele două situații în care o activitate este distrusă poate fi realizată prin intermediul metodei ''​isFinishing()''​.</​note>​ <note tip>​Distincția între cele două situații în care o activitate este distrusă poate fi realizată prin intermediul metodei ''​isFinishing()''​.</​note>​
  
-{{ :​eim:​laboratoare:​laborator02:​ciclul_de_viata_al_unei_activitati_2.png?​nolink&​700 }}+{{ :​eim:​laboratoare:​laborator02:​ciclul_de_viata_al_unei_activitati_2_nou.png?​nolink&​700 }} 
  
 <note important>​Fiecare dintre metodele ce gestionează ciclul de viață al activității trebuie să apeleze metoda părintelui. În cazul metodei ''​onCreate()'',​ este necesar ca acest lucru să fie realizat la începutul metodei.</​note>​ <note important>​Fiecare dintre metodele ce gestionează ciclul de viață al activității trebuie să apeleze metoda părintelui. În cazul metodei ''​onCreate()'',​ este necesar ca acest lucru să fie realizat la începutul metodei.</​note>​
Line 813: Line 814:
 {{ :​eim:​laboratoare:​laborator02:​logcat_configuration.png?​nolink&​700 }} {{ :​eim:​laboratoare:​laborator02:​logcat_configuration.png?​nolink&​700 }}
  
-=== Android Device Monitor ===+<​hidden>​ 
 +=== Android Device Monitor ​- deprecated!!! ​===
  
 Utilitarul pentru depanarea aplicațiilor pentru Android se numește **Android Device Monitor** (anterior purta denumirea DDMS - Dalvik Debug Monitor System). Acesta folosește **ADB (Android Debug Bridge)**, pentru a se conecta dispozitive fizice sau la emulatoare. Prin intermediul ADM se pot vizualiza parametrii dispozitivului si a aplicațiilor ce ruleaza pe acesta. În Android Studio, Android Device Monitor este accesibil din //Tools// → //Android// → //Android Device Monitor//. În Eclipse, poate fi accesat sub forma unei perspective,​ care va fi deschisă prin //Window// → //Open Perspective//​ → //​DDMS//​. ​ Utilitarul pentru depanarea aplicațiilor pentru Android se numește **Android Device Monitor** (anterior purta denumirea DDMS - Dalvik Debug Monitor System). Acesta folosește **ADB (Android Debug Bridge)**, pentru a se conecta dispozitive fizice sau la emulatoare. Prin intermediul ADM se pot vizualiza parametrii dispozitivului si a aplicațiilor ce ruleaza pe acesta. În Android Studio, Android Device Monitor este accesibil din //Tools// → //Android// → //Android Device Monitor//. În Eclipse, poate fi accesat sub forma unei perspective,​ care va fi deschisă prin //Window// → //Open Perspective//​ → //​DDMS//​. ​
Line 831: Line 833:
  
 **Procese și Fire de Execuție** **Procese și Fire de Execuție**
-<​spoiler>​ 
 În panoul **//​Threads//​** sunt afișate informațiile despre fiecare fir de execuție corespunzător unui proces. Întrucât aceste informații sunt preluate prin intermediul unei legături de rețea, astfel încât traficul generat este destul de mare, pentru nu a se încetini semnificativ funcționarea dispozitivului mobil (care este nevoit sa transmită aceste date permanent), vizualizarea trebuie activată manual. Astfel, se selectează dispozitivul mobil dorit și procesul respectiv (din panoul //​Devices//​) și se apasă butonul //​Refresh//​. În panoul **//​Threads//​** sunt afișate informațiile despre fiecare fir de execuție corespunzător unui proces. Întrucât aceste informații sunt preluate prin intermediul unei legături de rețea, astfel încât traficul generat este destul de mare, pentru nu a se încetini semnificativ funcționarea dispozitivului mobil (care este nevoit sa transmită aceste date permanent), vizualizarea trebuie activată manual. Astfel, se selectează dispozitivul mobil dorit și procesul respectiv (din panoul //​Devices//​) și se apasă butonul //​Refresh//​.
  
 {{ :​eim:​laboratoare:​laborator02:​ddms_threads.png?​nolink&​600 }} {{ :​eim:​laboratoare:​laborator02:​ddms_threads.png?​nolink&​600 }}
-<​spoiler>​ 
 **Utilizarea Memoriei** **Utilizarea Memoriei**
-<​spoiler>​ 
 DDMS oferă posibilitatea de a monitoriza utilizarea memoriei în cadrul panourilor **//​Heap//​** și **//​Allocation Tracker//​**,​ oferind informații cu privire la gradul de ocupare a memoriei, defalcată pe tipuri de obiecte (obiecte, clase, tablouri conținând elemente stocate pe 1, 2, 4, 8 octeți, date non-Java). ​ DDMS oferă posibilitatea de a monitoriza utilizarea memoriei în cadrul panourilor **//​Heap//​** și **//​Allocation Tracker//​**,​ oferind informații cu privire la gradul de ocupare a memoriei, defalcată pe tipuri de obiecte (obiecte, clase, tablouri conținând elemente stocate pe 1, 2, 4, 8 octeți, date non-Java). ​
  
 {{ :​eim:​laboratoare:​laborator02:​ddms_heap.png?​nolink&​600 }} {{ :​eim:​laboratoare:​laborator02:​ddms_heap.png?​nolink&​600 }}
-</​spoiler>​ 
 **Sistemul de Fișiere** **Sistemul de Fișiere**
-<​spoiler>​ 
 Consultarea sistemului de fișiere al dispozitivului mobil poate fi realizat prin intermediul panoului **//File Explorer//​**,​ putând fi vizualizate datele aplicației,​ stocate în ''​data/​data/<​package-name>'',​ unde ''<​package-name>''​ este denumirea pachetului corespunzător aplicației investigate. Consultarea sistemului de fișiere al dispozitivului mobil poate fi realizat prin intermediul panoului **//File Explorer//​**,​ putând fi vizualizate datele aplicației,​ stocate în ''​data/​data/<​package-name>'',​ unde ''<​package-name>''​ este denumirea pachetului corespunzător aplicației investigate.
- 
 {{ :​eim:​laboratoare:​laborator02:​ddms_file_explorer.png?​nolink&​600 }} {{ :​eim:​laboratoare:​laborator02:​ddms_file_explorer.png?​nolink&​600 }}
-</spoiler>+</hidden>
 **Simularea unor evenimente de tip întrerupere pentru emulator** **Simularea unor evenimente de tip întrerupere pentru emulator**
 <​spoiler>​ <​spoiler>​
-Întrucât emulatorul de Android nu poate simula toate funcțiile unui telefon real, pentru a se putea testa comportamentul aplicațiilor în cazul apariției unor evenimente de tip întrerupere,​ DDMS pune la dispoziție un panou **//​Emulator Control//​**,​ prin care pot fi controlate:+Întrucât emulatorul de Android nu poate simula toate funcțiile unui telefon real, pentru a se putea testa comportamentul aplicațiilor în cazul apariției unor evenimente de tip întrerupere,​ DDMS(deprecated) ​pune la dispoziție un panou **//​Emulator Control//​**,​ prin care pot fi controlate:
   * starea conexiunii de voce / date   * starea conexiunii de voce / date
   * primirea unui apel telefonic / SMS (apel, pierdere apel)   * primirea unui apel telefonic / SMS (apel, pierdere apel)
Line 988: Line 984:
 <note tip>În fișierul ''​activity_lifecycle_monitor.xml'',​ pentru fiecare dintre elementele grafice pentru care se dorește să se dezactiveze opțiunea de salvare a stării, se va completa proprietatea ''​android:​saveEnabled="​false"''​.</​note>​ <note tip>În fișierul ''​activity_lifecycle_monitor.xml'',​ pentru fiecare dintre elementele grafice pentru care se dorește să se dezactiveze opțiunea de salvare a stării, se va completa proprietatea ''​android:​saveEnabled="​false"''​.</​note>​
  
-Să se observe care este comportamentul în privința informațiilor reținute în elementele grafice de tip ''​EditText'',​ respectiv ''​CheckBox'',​ în condițiile în care activitatea este distrusă (se apasă butonul //Home//, astfel încât să se apeleze metodele ''​onPause()''​ și ''​onStop()'',​ apoi, în DDMS, în panoul //​Devices//, ​se identifică procesul corespunzător ​aplicației și se oprește folosind butonul //Stop Process//). Să se repornească aplicația din meniul dispozitivului mobil. ​+Să se observe care este comportamentul în privința informațiilor reținute în elementele grafice de tip ''​EditText'',​ respectiv ''​CheckBox'',​ în condițiile în care activitatea este distrusă (se apasă butonul //Home//, astfel încât să se apeleze metodele ''​onPause()''​ și ''​onStop()'',​ apoi se închide ​aplicația. Să se repornească aplicația din meniul dispozitivului mobil. ​
  
 **10.** Să se implementeze metoda ''​onSaveInstanceState()'',​ astfel încât, **în condițiile în care este bifat elementul grafic de tip ''​CheckBox''​**,​ să se salveze informațiile din interfața cu utilizatorul. **10.** Să se implementeze metoda ''​onSaveInstanceState()'',​ astfel încât, **în condițiile în care este bifat elementul grafic de tip ''​CheckBox''​**,​ să se salveze informațiile din interfața cu utilizatorul.
eim/laboratoare/laborator02.1582747945.txt.gz · Last modified: 2020/02/26 22:12 by madalina.barbu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0