Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
laboratoare:laborator10 [2015/05/12 01:07]
Andrei Roșu-Cojocaru
laboratoare:laborator10 [2015/05/12 01:44] (current)
Andrei Roșu-Cojocaru
Line 373: Line 373:
 API-ul Android pune la dispoziția utilizatorilor un [[http://​developer.android.com/​reference/​com/​google/​android/​gms/​location/​FusedLocationProviderApi.html|furnizor integrat de servicii de localizare]],​ prin care aceștia pot specifica anumiți parametrii de configurare,​ cum ar fi nivelul de precizie și gradul de utilizare al bateriei. API-ul Android pune la dispoziția utilizatorilor un [[http://​developer.android.com/​reference/​com/​google/​android/​gms/​location/​FusedLocationProviderApi.html|furnizor integrat de servicii de localizare]],​ prin care aceștia pot specifica anumiți parametrii de configurare,​ cum ar fi nivelul de precizie și gradul de utilizare al bateriei.
  
-Funcționalitatea legată de gestiunea locației curente (ca de altfel toate funcționalitățile legate de biblioteca Google Play Services) este disponibilă prin intermediul unui obiect de tip [[http://​developer.android.com/​reference/​com/​google/​android/​gms/​common/​api/​GoogleApiClient.html|GoogleApiClient]],​ a cărui instanță este obținută de regulă pe metoda ''​onCreate()''​ a aplicației Android, eliberarea resurselor corespunzătoare acesteia fiind făcută pe metoda ''​onDestroy()'' ​+Funcționalitatea legată de gestiunea locației curente (ca de altfel toate funcționalitățile legate de biblioteca Google Play Services) este disponibilă prin intermediul unui obiect de tip [[http://​developer.android.com/​reference/​com/​google/​android/​gms/​common/​api/​GoogleApiClient.html|GoogleApiClient]],​ a cărui instanță este obținută de regulă pe metoda ''​onCreate()''​ a aplicației Android, eliberarea resurselor corespunzătoare acesteia fiind făcută pe metoda ''​onDestroy()''​. 
 + 
 +{{ :​laboratoare:​laborator10:​clientul_google_api.png?​nolink&​600 }}
  
 <code java> <code java>
Line 1044: Line 1046:
 Se dorește să se implementeze o aplicație care să navigheze către o locație specificată prin intermediul coordonatelor GPS (latitudine / longitudine) și pentru care se dorește plasarea unui reper pe hartă, însoțit de o denumire. Se dorește să se implementeze o aplicație care să navigheze către o locație specificată prin intermediul coordonatelor GPS (latitudine / longitudine) și pentru care se dorește plasarea unui reper pe hartă, însoțit de o denumire.
  
 +{{ :​laboratoare:​laborator10:​google_maps_places.png?​nolink&​400 }}
 +
 +Reperele vor fi stocate în cadrul unei liste (obiect de tip ''​Spinner''​),​ astfel încât la selecția unui element din cadrul acesteia, se va vizualiza obiectivul geografic marcat anterior.
  
 Se cere să se implementeze funcționalitățile pentru adăugarea unui reper și ștergerea tuturor reperelor de pe hartă: Se cere să se implementeze funcționalitățile pentru adăugarea unui reper și ștergerea tuturor reperelor de pe hartă:
Line 1070: Line 1075:
  
 Se dorește să se implementeze o aplicație pentru care să se implementeze posibilitatea de actualizare periodică a poziției curente pe hartă, în funcție de starea unui buton, prin care se controlează pornirea / oprirea acestui serviciu. Se dorește să se implementeze o aplicație pentru care să se implementeze posibilitatea de actualizare periodică a poziției curente pe hartă, în funcție de starea unui buton, prin care se controlează pornirea / oprirea acestui serviciu.
-  - când serviciul este activat, se vizualizează pe hartă doar locația curentă;+  - când serviciul este activat, se vizualizează pe hartă doar locația curentă, completându-se în mod automat informații precum latitudinea și longitudinea,​ actualizându-se corespunzător poziția;
   - când serviciul este dezactivat, utilizatorul are posibilitatea de a controla poziția care se vizualizează pe hartă.   - când serviciul este dezactivat, utilizatorul are posibilitatea de a controla poziția care se vizualizează pe hartă.
  
Line 1081: Line 1086:
 Se cere să se implementeze metodele pentru pornirea și oprirea serviciului de actualizare periodică a locației de pe hartă: Se cere să se implementeze metodele pentru pornirea și oprirea serviciului de actualizare periodică a locației de pe hartă:
  
-**a)** metoda ''​startLocationUpdates()''​ din clasa ''​GoogleMapsActivity''​+**a)** metoda ''​startLocationUpdates()''​ din clasa ''​GoogleMapsActivity''​:
   - se apelează metoda ''​requestLocationUpdates()''​ din clasa ''​FusedLocationProviderApi''​ <code java>   - se apelează metoda ''​requestLocationUpdates()''​ din clasa ''​FusedLocationProviderApi''​ <code java>
 LocationServices.FusedLocationApi.requestLocationUpdates( LocationServices.FusedLocationApi.requestLocationUpdates(
Line 1129: Line 1134:
 **9.** Să se importe în mediul integrat de dezvoltare Eclipse Luna SR1a (4.4.1) proiectele ''​google-play-service_lib''​ și ''​04-GoogleMapsGeofencing''​ din directorul ''​labtasks''​ (în această ordine). **9.** Să se importe în mediul integrat de dezvoltare Eclipse Luna SR1a (4.4.1) proiectele ''​google-play-service_lib''​ și ''​04-GoogleMapsGeofencing''​ din directorul ''​labtasks''​ (în această ordine).
  
-Se dorește să se implementeze o aplicație care să monitorizeze activitatea unui dispozitiv mobil raportat la o zonă de restricție geografică, raportând evenimentele de tip intrare, respectiv ieșire prin intermediul unor notificări. +Se dorește să se implementeze o aplicație care să monitorizeze activitatea unui dispozitiv mobil raportat la o zonă de restricție geografică. ​
  
-Serviciul referitor la monitorizarea unei anumite locații poate fi activat sau dezactivat, specificându-se de fiecare dată coordonatele zonei față de care sunt realizate ​modificările.+Serviciul referitor la monitorizarea unei anumite locații poate fi activat sau dezactivat, specificându-se de fiecare dată coordonatele zonei față de care sunt realizate ​comparațiile.
  
 Aplicația va afișa pe hartă în permanență locația curentă prin actualizările periodice care sunt transmise. Aplicația va afișa pe hartă în permanență locația curentă prin actualizările periodice care sunt transmise.
  
-{{:​laboratoare:​laborator10:​google_maps_geofencing_01.png?​nolink&​400}}  +{{ :​laboratoare:​laborator10:​google_maps_geofencing_01.png?​nolink&​400 }}  
-{{:laboratoare:​laborator10:​google_maps_geofencing_02.png?​nolink&​400}} ​ + 
-{{:​laboratoare:​laborator10:​google_maps_geofencing_03.png?​nolink&​400}} ​ +Notificările vor fi generate: 
-{{:​laboratoare:​laborator10:​google_maps_geofencing_04.png?​nolink&​400}}  + 
-{{:​laboratoare:​laborator10:​google_maps_geofencing_05.png?​nolink&​400}}  +  - când utilizatorul intră în zona de restricție geografică\\ \\ {{ :​laboratoare:​laborator10:​google_maps_geofencing_02_03.png?​nolink&​600 }} 
-{{:​laboratoare:​laborator10:​google_maps_geofencing_06.png?​nolink&​400}} ​+  - când utilizatorul iese din zona de restricție geografică\\ \\ {{ :​laboratoare:​laborator10:​google_maps_geofencing_04_05.png?​nolink&​600 }} 
 + 
 +Detaliile cu privire la evenimentul produs vor putea fi vizualizate în cadrul unei activități dedicate.
  
 Se cere să se analizeze evenimentul legat de zona de restricție geografică în cadrul serviciului ''​GeofenceTrackerIntentService'',​ pe metoda ''​onHandleIntent()''​. Se cere să se analizeze evenimentul legat de zona de restricție geografică în cadrul serviciului ''​GeofenceTrackerIntentService'',​ pe metoda ''​onHandleIntent()''​.
Line 1159: Line 1166:
 List<​Geofence>​ triggeringGeofences = geofencingEvent.getTriggeringGeofences();​ List<​Geofence>​ triggeringGeofences = geofencingEvent.getTriggeringGeofences();​
 </​code>​ </​code>​
-      - se parcurge lista și pentru fiecare obiect se obține identificatorul unic (''​gerRequestId()''​);​+      - se parcurge lista și pentru fiecare obiect se obține identificatorul unic (''​getRequestId()''​);​
   - se transmite mesajul explicativ prin intermediul unei notificări (ca parametru al metodei ''​sendNotification()''​).   - se transmite mesajul explicativ prin intermediul unei notificări (ca parametru al metodei ''​sendNotification()''​).
  
laboratoare/laborator10.1431382076.txt.gz · Last modified: 2015/05/12 01:07 by Andrei Roșu-Cojocaru
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0