Differences

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

Link to this comparison view

eim:laboratoare:laborator05 [2020/03/26 09:10]
madalina.barbu [Resurse Utile]
eim:laboratoare:laborator05 [2021/04/04 23:29] (current)
madalina.barbu [Activitate de Laborator]
Line 314: Line 314:
  
 === Servicii de tip Bounded === === Servicii de tip Bounded ===
 +<spoiler (Opțional)> ​
 Un serviciu de tip bounded implică o interacțiune permanentă cu una sau mai multe componente ale unei (unor) aplicații Android. Astfel, serviciul poate expune o anumită funcționalitate către componentele aplicației Android (prin intermediul unei interfețe) sau poate fi utilizat ca mecanism de comunicație inter-proces,​ pentru transmiterea de informații între acestea. Un serviciu de tip bounded implică o interacțiune permanentă cu una sau mai multe componente ale unei (unor) aplicații Android. Astfel, serviciul poate expune o anumită funcționalitate către componentele aplicației Android (prin intermediul unei interfețe) sau poate fi utilizat ca mecanism de comunicație inter-proces,​ pentru transmiterea de informații între acestea.
  
Line 451: Line 451:
  
 Dacă este necesar ca procesarea să fie realizată simultan, poate fi utilizat AIDL (Android Interface Definition Language) care realizează transformarea dintre obiecte și primitive la nivelul sistemului de operare prin intermediul cărora se realizează comunicația inter-proces. În această situație, trebuie avut în vedere faptul că sincronizarea dintre diferitele fire de execuție trebuie realizată manual, operație destul de complexă. Pe baza fișierului ''​.aidl''​ care descrie interfața de programare, se va genera o clasă abstractă responsabilă cu comunicația inter-proces,​ din care va fi derivat serviciul respectiv. Dacă este necesar ca procesarea să fie realizată simultan, poate fi utilizat AIDL (Android Interface Definition Language) care realizează transformarea dintre obiecte și primitive la nivelul sistemului de operare prin intermediul cărora se realizează comunicația inter-proces. În această situație, trebuie avut în vedere faptul că sincronizarea dintre diferitele fire de execuție trebuie realizată manual, operație destul de complexă. Pe baza fișierului ''​.aidl''​ care descrie interfața de programare, se va genera o clasă abstractă responsabilă cu comunicația inter-proces,​ din care va fi derivat serviciul respectiv.
 +</​spoiler> ​
 ==== Prioritatea unui Serviciu ==== ==== Prioritatea unui Serviciu ====
  
Line 952: Line 952:
 </​spoiler>​ </​spoiler>​
  
-**10.** Să se încarce în mediul integrat de dezvoltare Android Studio proiectul //​BoundedServiceActivity//​ din directorul ''​labtasks/​BoundedService''​. Se dorește să se implementeze un serviciu de tip bounded care poate interacționa cu o activitate prin intermediul unei metode care furnizează un șir de caractere ales aleator dintr-o listă de valori.+**10.** **[Opțional]** Să se încarce în mediul integrat de dezvoltare Android Studio proiectul //​BoundedServiceActivity//​ din directorul ''​labtasks/​BoundedService''​. Se dorește să se implementeze un serviciu de tip bounded care poate interacționa cu o activitate prin intermediul unei metode care furnizează un șir de caractere ales aleator dintr-o listă de valori.
  
 **a)** În clasa ''​BoundedService''​ din pachetul ''​ro.pub.cs.systems.eim.lab05.boundedserviceactivity.service'',​ să se implementeze o clasă internă **publică**,​ derivată din interfața [[http://​developer.android.com/​reference/​android/​os/​IBinder.html|IBinder]],​ care oferă o referință către serviciu prin intermediul metodei **publice** ''​getService()''​. Instanța acestei clase interne va fi furnizată ca rezultat al metodei [[http://​developer.android.com/​reference/​android/​app/​Service.html#​onBind%28android.content.Intent%29|onBind()]]. **a)** În clasa ''​BoundedService''​ din pachetul ''​ro.pub.cs.systems.eim.lab05.boundedserviceactivity.service'',​ să se implementeze o clasă internă **publică**,​ derivată din interfața [[http://​developer.android.com/​reference/​android/​os/​IBinder.html|IBinder]],​ care oferă o referință către serviciu prin intermediul metodei **publice** ''​getService()''​. Instanța acestei clase interne va fi furnizată ca rezultat al metodei [[http://​developer.android.com/​reference/​android/​app/​Service.html#​onBind%28android.content.Intent%29|onBind()]].
eim/laboratoare/laborator05.1585206658.txt.gz · Last modified: 2020/03/26 09:10 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