Elaborarea Unei Aplicatii Pentru Telefonia Mobila

,,ELABORAREA UNEI APLICAȚII PENTRU TELEFONIA MOBILĂ”

CUPRINS:

ADNOTARE

ANNOTATION

АННОТАЦИЯ

INTRODUCERE

1 ANALIZA APLICAȚIILOR DE BAZĂ PENTRU TELEFONIA MOBILĂ

1.1. Scurt istoric al apariției telefoniei mobile

1.2. Generațiile telefoniei mobile și aplicațiile pe care le suportă

1.3. Realizarea aplicațiilor pentru telefoanele mobile

1.4. Aplicații Android

1.5. Concluzii la capitolul 1.

2. PROIECTAREA APLICAȚIEI ANALITICE PE TELEFONUL MOBIL

2.1. Descrierea platformei software

2.2. Aplicațiile sistemului Android

2.3. Argumentarea alegerii sistemului Android

2.4. Resurse ale aplicației

2.5. Concluzii la capitolul 2.

3. APECTE TEHNICE PRIVIND APLICAȚIA ANDROID SECONDACTIVITY PENTRU TELEFONUL MOBIL

3.1. Ghidul programatorului

3.2. Ghidul utilizatorului

3.3. Concluzii la capitolul 3

CONCLUZII GENERALE

BIBLIOGRAFIE

ANEXE

DECLARAȚIE

CIRCULUM VITTAE

DATE PRIVIND CONTROLUL TEHNIC AL TEZEI

INTRODUCERE

Actualitatea temei. Primul apel de pe un telefon mobil a fost făcut de Cooper la 3 aprilie 1973. Abia în 1983 Motorola a prezentat primul telefon mobil comercial din lume, Dyna TAC 8000X. În ziua de azi telefonia celulară sau mobilă se bazează pe standardul de comunicații și rețeaua GSM.

Istoria telefonului mobil cuprinde evenimentele legate de apariția primelor telefoane mobile, dezvoltarea și evoluția acestora, trecând prin diverse forme, de la stațiile de emisie-recepție, utilizate laautovehicule, până la telefoanele celulare modernе.

La început, stațiile de emisie-recepție erau utilizate în dotarea taxiurilor, ambulanțelor, vehiculelor de poliție și altor vehicule similare, unde era necesară o intervenție promptă și operativă. Acestea nu puteau fi considerate telefoane mobile în sensul actual al cuvântului: nu puteau fi conectate la rețeaua de telefonie fixă clasică și nu erau dotate cu numere pentru apelarе. Ulterior au apărut și variantele portabile ale acestora. Astfel, după 1940, Motorola produce o stație de emisie-recepție numită "Handie-Talkie", care era de aproape o jumătate de metru lungime și era utilizată de armata americană.

În Europa, telefonia-radio este folostă prima dată în 1926 în trenul de lux Berlin – Hamburg. La scurt timp, radio-telefonia este introdusă și pe avioanele de pasageri în scopul îmbunătățirii siguranței zborului. Acest mijloc de comunicație este utilizat și de tancurile germane în cel de-al Doilea Război Mondial. La încheierea războiului, aceste echipamente telefonice intră în dotarea mașinilor de patrulă ale poliției germane din zona de ocupație britanică. În toate aceste cazuri, utilizarea acestor telefoane era încredințată doar specialiștilor. De-abia după 1950 astfel de telefoane au început să fie folosite și de nespecialiști, aceasta petrecându-se pe vasele care navigau pe Rin.

În magazinele de aplicații există sute de mii de aplicații diferite disponibile pentru fiecare tip uzual de dispozitiv inteligent.

S-a raportat că magazinele de aplicații sunt aprovizionate zilnic cu peste 1 600 de aplicații noi și că un utilizator mediu de telefoane inteligente descarcă 37 de aplicații. Astfel de aplicații pot fi furnizate utilizatorilor finali la costuri inițiale reduse sau fără costuri inițiale, adresându-se unui public format din doar câțiva indivizi sau din milioane de persoanе.

Aplicațiile sunt capabile să colecteze cantități considerabile de date din dispozitivele inteligente (de exemplu, datele stocate în dispozitiv de către utilizatori și datele furnizate de diferiți senzori, cum ar fi datele de localizare) și să le prelucreze pentru a oferi utilizatorilor finali servicii noi și inovatoarе. Cu toate acestea, aceleași surse de date pot fi prelucrate suplimentar, de obicei cu scopul de a furniza un flux de venituri într-o manieră care poate fi necunoscută sau nedorită de către utilizatorii finali.

Dezvoltatorii de aplicații care nu cunosc cerințele în materie de protecție a datelor pot crea riscuri semnificative la adresa vieții private și a reputației utilizatorilor de dispozitive inteligentе. Principalele riscuri legate de protecția datelor cu caracter personal la care sunt expuși utilizatorii finali sunt lipsa de transparență și de cunoaștere a tipurilor de prelucrări operate de o aplicație și lipsa consimțământului în cunoștință de cauză din partea utilizatorilor finali înainte de prelucrarea datelor respectivе.

Măsurile de securitate deficiente, o tendință evidentă de maximizare a datelor și elasticitatea scopurilor în care sunt colectate datele cu caracter personal contribuie, de asemenea, la apariția riscurilor cu privire la protecția datelor cu caracter personal în mediul actual al aplicațiilor. Un risc ridicat la adresa protecției datelor cu caracter personal rezultă, de asemenea, din gradul de fragmentare a mediului de dezvoltare a aplicațiilor între numeroși actori, printre care se numără: dezvoltatorii de aplicații, proprietarii de aplicații, magazinele de aplicații, producătorii de sisteme de operare și de dispozitive (producătorii de SO și de dispozitive) și alți terți care pot fi implicați în colectarea și prelucrarea datelor cu caracter personal preluate din dispozitivele inteligente, cum ar fi furnizorii de instrumente analitice și de servicii de publicitatе.

Cadrul juridic relevant este reprezentat de Directiva privind protecția datelor, în combinație cu protecția dispozitivelor mobile ca parte din sfera privată a utilizatorilor, prevăzută de Directiva asupra confidențialității și comunicațiilor electronicе. Normele respective se aplică tuturor aplicațiilor destinate utilizatorilor de aplicații de pe teritoriul UE, indiferent de amplasarea dezvoltatorului sau a magazinului de aplicații.

Scopul lucrării. Studiul și analiza aplicațiilor pentru telefoanele mobile, și realizarea unei aplicații proprii.

Structura lucrării. Teza de licența conține partea introductivă, două capitol analitice-teoretice, un capitol de implementare practică a unei aplicații pentru telefonul mobil, concluzii, bibliografie și anexе. Capitolele acestei lucrări sunt structurate astfel: aspecte teoretice ale proiectului, urmate de tehnologiile folosite la implementarea proiectului, cu detalierea celor folosite la crearea aplicației. Urmează arhitectura aplicației, în care sunt prezentate diferitele module ale aplicației și interacțiunea dintre ele, din nou cu detalierea. În final, capitolul de utilizarea a aplicației prezintă în detaliu aplicația și modalitatea de utilizare interfeței grafice, prin screenshoturi și înfățișarea unor diverse scenarii de utilizare. Capitolul detaliilor de implementare prezintă metodele de programare folosite, oferind spre exemplificare porțiuni de cod explicate.

1. ANALIZA APLICAȚIILOR DE BAZĂ PENTRU TELEFONIA MOBILĂ

Scurt istoric al apariției telefoniei mobile

Telefonul mobil este astăzi un obiect absolut indispensabil pentru foarte mulți oameni. Câțiva dintre ei au chiar mai mult de 1 telefon. Cu toate acestea, se pare ca acest obiect a avut o istorie și o naștere destul de grele, iar trecerea de la telefonul fix la mobil a presupus schimbarea mentalităților. Dar de-a lungul secolului al XX-lea, această modernizare a parcurs mai multe treptе [8].

Un telefon mobil sau telefon celular (întâlnit și sub formele substantivizate „un celular”, „un mobil”) este un dispozitiv electronic portabil care funcționează fără fir (prin radio) pe baza rețelei GSM și este folosit în general pentru comunicații personale la distanță marе. Telefoanele portabile care nu se bazează pe rețeaua GSM nu trebuie numite „mobile”, deși sunt deplasabile, v. mai jos.

Miniaturizarea continuă a permis ca în zilele noastre în telefoanele mobile să se mai integreze o serie întreagă de funcțiuni suplimentare, ca de ex. dictafon, aparat de fotografiat și filmat, aparat de accesat Internetul și webul, GPS, radio și multe altele, astfel rezultând un nou gen de telefon mobil, foarte „inteligent”, numit smartphonе.

În 1910, inventatorul și omul de afaceri suedez Lars Magnus Ericsson pune în practică conceptul de telefonie mobilă instalându-și un astfel de dispozitiv în mașina sa. Prin intermediul unei antene bifilare, reușește să se conecteze cu rețeaua de telefonie națională în timp ce se deplasa prin țară.

În 1946, inginerii sovietici G. Saphiro și I. Zaharcenko testează cu succes un telefon montat într-un autovehicul care, pe o rază de 20 de kilometri, se putea conecta la rețeaua locală.

Conceptul de bază de telefonie celulară se naște în 1947, când cercetătorii își dau seama că, prin introducerea unor zone celulare pot îmbunătăți substanțial eficacitatea convorbirilor. Astfel, în decembrie 1947, Douglas H. și W. Rae Young, ingineri la firma americană de cercetare Bell Laboratories, propun construcția unor celule hexagonale ca relee pentru telefoanele mobilе [39].

În 1957, radio-inginerul sovietic Leonid Kuprianovici din Moscova a creat un telefon portabil numit după inițialele sale LK-1 sau „radiofon”. Acesta era prevăzut cu antenă, rotiță pentru formarea numerelor și putea comunica cu o stație-bază. Avea o greutate de 3 kg, raza de acțiune 20-30 km, iar timpul de funcționare al acumulatorilor ajungea până la 20-30 de orе. Kuprianovici și-a patentat invenția în același an.

Telefonul mobil a fost inventat în 1973 în Statele Unite ale Americii, deși diverse concepte, planuri și prototipuri au existat încă de la începutul secolului XX.

Inventatorul telefonului mobil, așa cum este utilizat astăzi a fost Motorola (Anexa 1). Pe 3 aprilie 1973, Martin Cooper, unul dintre managerii Motorola a inițiat pentru prima oară un apel de pe telefonul mobil.

La capătul firului fictiv s-a aflăt nimeni altul decât Joel Engel, rivalul său de la Bell Labs (actualii Alcatel-Lucent), o altă companie în căutarea revoluționării tehnologiei.

În 1983 a apărut primul telefon mobil destinat utilizatorului final (eu, tu și restul lumii), aprobat de către FCC pentru comercializarе. Acesta a fost Motorola DynaTAC. Acesta cântărea aproape 1 kg.

În perioada 1983 – 1989 au apărut cinci modele DynaTAC, iar la sfârșitul anului 1989 au fost înlocuite de către un terminal mult mai performant, Motorola MicroTAC.

Telefonul mobil “s-a născut” în anul 1973 pe mărețul tărâm american, deși diverse concepte, planuri și prototipuri au existat încă de la începutul secolului XX. Culmea, inventatorii sunt chiarMotorola, companie care în prezent e pe cale să abandoneze divizia de telefoanе [57].

În data de 3 aprilie 1973, Dr. Martin Cooper (unul dintre managerii companiei americane), a fost prima persoană pământeană care a inițiat un apel de pe telefonul mobil. La capătul firului fictiv s-a aflăt nimeni altul decât Joel Engel, marele său rival de la Bell Labs (actualii Alcatel-Lucent), o altă companie în căutarea revoluționării tehnologiei. Discuția pe care au avut-o nu a fost din păcate înregistrată, însă există zvonuri cum că Engel ar fi plâns cu lacrimi de crocodil la aflărea veșții. S-a liniștit însă repede și împreună cu inginerii de la Bell Labs s-a concentrat pedezvoltarea rețelelor de telefonie mobilă.

De atunci, s-a lucrat din greu la realizarea a tot felul de prototipuri, iar abia în 1983 a apărut primul telefon mobil destinat utilizatorului final (eu, tu și restul lumii), aprobat de către FCC pentru comercializarе. Acesta a fost Motorola DynaTAC (model 8000x) – un “obiect” privit cu suspiciune de neavizați, cu admirație de către persoanele pasionate de tehnologiе.

Nu oricine își permitea însă acest telefon și nu oricine era capabil să-l țină în mână. Motorola DynaTAC (cunoscut drept și telefonul lui Zack, din Saved by the Bell) costa 3995 $, măsura 330 mmlungime și cântărea aproape 1 Kg (869 grame) – o cărămidă în toată regula. Puteai să vorbești la el maximum 30 de minute, iar timpul de stand-by cu greu atingea 8 orе. [54]

În perioada 1983 – 1989 și-au făcut simțită prezența cinci modele DynaTAC, dar la finele anului 1989 au fost înlocuite de către un terminal mult mai aspectuos și performant, este vorba despre Motorola MicroTAC 9800x (TAC  primul telefon mobil destinat utilizatorului final (eu, tu și restul lumii), aprobat de către FCC pentru comercializarе. Acesta a fost Motorola DynaTAC (model 8000x) – un “obiect” privit cu suspiciune de neavizați, cu admirație de către persoanele pasionate de tehnologiе.

Nu oricine își permitea însă acest telefon și nu oricine era capabil să-l țină în mână. Motorola DynaTAC (cunoscut drept și telefonul lui Zack, din Saved by the Bell) costa 3995 $, măsura 330 mmlungime și cântărea aproape 1 Kg (869 grame) – o cărămidă în toată regula. Puteai să vorbești la el maximum 30 de minute, iar timpul de stand-by cu greu atingea 8 orе. [54]

În perioada 1983 – 1989 și-au făcut simțită prezența cinci modele DynaTAC, dar la finele anului 1989 au fost înlocuite de către un terminal mult mai aspectuos și performant, este vorba despre Motorola MicroTAC 9800x (TAC = Total Area Coverage). Acesta din urmă venea împreună cu un dock special de încărcare și avea un design de tip“flip”, cu o clapetă “elegantă” ce acoperea tastatura. Cu ea deschisă, ajungea la 229 mm lungime, dar designul compact permiteapurtarea telefonului în buzunar. Oricum, cele 303 grame (asta Dacă optai pentru o baterie slim, subțire și ușoară) cereau imperios niște buzunare rezistentе.

MicroTAC, telefonul reprezentativ al anilor ’80, a fost disponibil înșapte versiuni (modele) și s-a vândut până în 1991, la prețuri cuprinse între 2495 $ și 3495 $.

Fani Nokia și nu numai, vă întrebați ce a făcut gigantul finlandez în perioada pionieratului telefoniei mobile? Ei bine, Nokia a produs echipamente de comunicații comerciale și militare încă din anii ’60, însă primul lor telefon GSM(Nokia 1011) a fost lansat după nouă ani de la apariția lui DynaTAC, în 1992. Despre Nokia 1011 se știe că avea niște dimensiuni agreabile (195x60x45 mm) spre deosebire de cărămizile Motorola. Funcționa în banda de 900 Mhz, iar în agendă încăpeau maximum 99 de numerе.

În anul 1994 a fost scos din producție, fiind înlocuit de către Nokia 2100 – primul telefon Nokia care a venit cu celebrul ringtone Nokia Tune, dar și primul terminal ce oferea transfer de date, fax șimesaje SMS. Finlandezii sperau să vândă măcar 400.000 de modele, dar Nokia 2100 a depășit toate așteptările atingând uimitoarea cifră de 20 de milioane de terminale vândute în întreaga lumе.

Rețelele de telefoniе. Am vorbit despre apariția telefoanelor mobile, dar desigur pentru ca ele să poată fi utilizate era necesară creearea unei rețele celulare (Anexa 5). Prima rețea comercială de telefonie mobilă a fost NTT și a apărut în anul 1979, în Japonia. Rețeaua GSM 2G (Second Generation), cea mai folosită în zilele noastre, există din 1991 mulțumită tot unei țări scandinave – Finlanda.

În 2001 a venit și a treia generație de rețele GSM (3G), de data aceasta din inițiativa Japoniei, mai exact prin operatorul NTT DoCoMo.

"Moda anului 2008" se numește însă HSDPA (3,5G). Navigarea pe net în acest caz se face cu viteze de maximum 7.2 Mbps.[12]

Telefoanele mobile din anii ’90 nu au avut parte de o evoluție atât de rapidă așa cum suntem obișnuiți să vedem în zilele noastrе. De la rudimentarele LCD-uri cu o linie de afișare s-a trecut la ecrane cu mai multe linii și rezoluție mai marе. Dimenisiunile și greutatea s-au diminuăt, iar autonomia bateriei a crescut simțitor.[35]

Generațiile telefoniei mobile și aplicațiile pe care le suportă

Termenul "generație", folosit pentru a denumi evoluțiile succesive ale rețelelor radio este, în general, arbitrară. Există mai multe interpretări ale acesteia, și nu există o definiție oficială în ciuda unui consens larg ITU-R. Din punctul de vedere al ITU-R, 4G este echivalentă cu IMT-Advanced, care are cerințe specifice de performanță. Dar, conform operatorilor, o generație de rețele implică utilizarea unei noi tehnologii necompatibile cu cea anterioară.

Noile generații de telefonie mobilă au apărut cam la fiecare zece ani de la prima rețea analogică în 1981 (1G), și transmisiune digitală (2G) în 1992. Aceasta a fost urmată, în 2001, de 3G cu suport multimedia, transmiterea de spectru împrăștiat, și bitrate de vârf de cel puțin 200 kbit / s; în 2011/2012, standardul 4G se referă la toate Protocoalele Internet (IP ) cu comutare de pachete, care oferă acces ultrarapid de bandă largă (viteză de ordinul gigabiților).

La mijlocul anilor 1990, organizația de standardizare ITU-R a elaborat cerințele IMT-2000, ca un cadru pentru ceea ce ar trebui să fie considerate standardele sistemelor 3G, care necesită o rată de biți de vârf de 200 kbit / s. În 2008, ITU-R a elaborat cerințele IMT-Advanced (International Mobile Telecommunications Advanced) pentru sistemele 4G.

Cel mai rapid standard 3G în familia UMTS este standardul HSPA+, care este disponibil comercial din 2009 și oferă 28 Mbit / s downstream (22 Mbit / s upstream), fără MIMO, adică doar cu o antenă, iar în 2011 a crescut până la 42 Mbit / s downstream folosind fie DC-HSPA+ (utilizarea simultană a două transportatoare UMTS de 5 MHz) fie 2×2 MIMO. În teorie sunt posibile viteze de până la 672 Mbit / s, dar nu a fost implementat încă. Cel mai rapid standard 3G în familia CDMA 2000 este EV-DO Rev B, care este disponibil din 2010 și oferă 15.67 Mbit / s upstream.[35]

Prima generație

Dr. Martin Cooper (Motorola) efectuează prima convorbire cu un telefon mobil în 1973 (reconstituire în 2007). În afară de Martin Cooper de la Motorola căruia i se atribuie primul telefon mobil practic, bazat pe utilizarea undelor radio, putem menționa și alți inventatori care și-au adus contribuția în evoluția telefoniei mobile:

Nathan B. Stabbefield din Kentucky (patent 887,357);

George Sweigert din Ohio căruia i se atribuie primul telefon modern fără fir;

Charles A. Gladder și martin H. Parelman din Nevada, invenție patentată în 1979 ce prevedea utilizarea frecvențelor radio.

Dacă Bell Laboratories introdusese ideea comunicațiilor celulare pentru mașinile poliției (în 1947), meritul Motorola și mai ales al lui Cooper constă în utilizarea acestuia și în afara automobilului.[57]

În 1977, AT&T și bell Labs construiesc un prototip de sistem celular, iar în anul următor Bell Labs lansează testarea primei rețele celulare din Chicago, având peste 2000 de clienți de probă, utilizân serviciul AMPS, dar această rețea a fost aprobată de Comisia Federală de Comunicații (FCC) abia în 1982. În octombrie 1983, Illinois Bell deschide primul sistem celular comercial.

Prima lansare comercială a telefoanelor celulare a avut loc în Tokio în 1979 (firma NET) În 1981, Motorola și american Radio Telephone lansează o a doua testare de serviciu comercial pe teritoriul SUA.

În același an, sistemul NMT este lansat în Danemarca, Finlanda, Norvegia și Suedia. În anii '80 are loc o dezvoltare susținută a telefoniei mobile (Anexa 2). Apar rețele celulare cu o multitudine de stații-bază având asigurat și protocoluil aferent de trecere de la o celulă la alta, fără întreruperea convorbirii. În 1987, numărul de abonați americani depășește un milion.

În acea perioadă transmisia se efectua în sistem analog, tehnologie care nu era la fel de performantă ca cea digitală de astăzi. Apăreau interferențe legate de electricitatea statică și de zgomot, iar transmisiile erau departe de a fi perfectе. Sistemele utilizate (NMT, AMPS, TACS, RTMI, C-Net și Radiocom 2000) vor fi desemnate ulterior sub denumirea generală de generația I (1 G) de telefoane mobilе.[54]

A doua generație

Prin anii '90 este lansată a doua generație (2G), care era bazată pe sistemele GSM (Global System for Mobile Communication), IS-116 ("TDMA"), IS-95 ("CDMA"), iDEN și pDC. Sistemul de telefonie 2G este pus în practică pentru prima dată în Finlanda, în 1991, prin rețeaua de tip GSM Radiolinja (astăzi Elisa), fondată la 19 septembrie 1998(Anexa 3).

De data aceasta, transmisia se realiza în mod digital. Dispăreau interferențele, iar conectarea cu rețeaua era mai rapidă. Telefoanele devin tot mai mici și portabile (greutatea cuprinsă între 100 și 200 grame devine standard), mai eficiente energetic, iar popularitatea lor crește, devenind tot mai ieftinе.[52]

A treia generație

Prima astfel de rețea, sub formă de test a fost introdusă în mai 2001, în Japonia (NTT DoCoMo), lansarea comercială având loc în același an la 1 octombriе. Viteza de transmisie este mai mare, la fel și capacitatea rețelei și calitatea serviciior oferite, care devin tot mai diversificate(Anexa 4).

În 2002 generația a treia este lansată și în SUA și coreea de Sud, țări urmate la scurt timp de Marea Britanie și italia. La sfârșitul anului 2007 existau aproape 200 de milioane de abonați ai rețelelor 3G. Dezvoltarea sistemelor 3G este susținută de trei principale motivații:

a. Realizarea de transmisii multimedia pe suport radio;

b. Obținerea unor capacități sporite pentru utilizator, în raport cu cele oferite 2G;

c. Realizarea unui standard sau a unor grupuri de standarde cu aplicație la nivel global. Vitezele în 2G (de aproximativ 9,6 kbit/s) sunt prea mici pentru a permite realizarea de transmisii cu un conținut îmbogățit, cum ar fi imagini însoțite de text etc. 2+ rezolvă în bună măsură această problemă, dar lasă încă loc pentru soluții mai performantе. Vitezele de transmisie trebuie să fie mai elastice, în raport cu conținutul serviciului realizat, cu valori de la c‚țiva kbit/s p‚nă la c‚țiva Mbit/s.[52]

A patra generație

Introducerea comercială a generației următoare, a patra, numită "4G", este așteptată pentru circa 2012-2014. Se urmărește ca transmisiile multimedia să fie net superioare, fiind executate în modul numit "streaming media", prin care informația multimedia va fi transmisă prompt și cu fidelitatе.

Pentru 4 G se pot da mai multe definiții, dintre care cea mai simplă este cea de viitoare generație de rețele radio ce va completa și înlocui, în viitor, rețelele 3G. Œn momentul actual, la începutul anului 2003, 4G reprezintă în principal o inițiativă la nivel academic și de cercetare/dezvoltare ca și un cadru de discuții pentru evoluții viitoare, cu scopul eliminării problemelor semnalate în dezvoltarea 3G.[51]

Tabelul 1.

Principalele performanțele 3G și 4G sunt prezentate comparativ

În domeniul telecomunicațiilor, 4G este a patra generație de standarde de comunicații pentru telefoane mobilе. Un standard 4G prevede acces mobil ultrarapid în bandă largă pe Internet pentru teleoanele mobile, de exemplu la laptopuri cu modemuri USB fără fir, la smartphone, precum și la alte dispozitive mobilе.'', '' Aplicații posibile includ accesul web mobil modificat, telefonie IP, servicii de jocuri de noroc, televiziune mobilă de înaltă definiție, conferințe video, și televiziune 3D.

Recent, dispozitivele mobile cu Android și Windows au intrat în categoria 4G. Un avantaj de bază 4G este că poate, în orice moment al unei călătorii, să ofere o rată de transfer de date pe Internet mai mare decât orice servicii existente de telefonie mobilă (exclusiv conexiunile de bandă largă și Wi-Fi). Spre deosebire de generațiile anterioare, un sistem 4G nu suportă serviciu tradițional de telefonie cu comutare circuit, suportând comunicarea bazată pe all-Internet Protocol (IP), cum ar fi telefonia IP. Tehnologia de radio cu spectru extins utilizată în sistemele 3G, este abandonată în toate sistemele candidate 4G și înlocuită cu transmisia de purtător multiplu OFDMA și alte scheme de domeniu de frecvență egalizată (FDE) , ceea ce face posibil transferul de rate foarte mari de biți în ciuda propagării radio multi-cale extinse (ecouri). Viteza de transfer de vârf este îmbunătățită prin matricea de antene inteligente pentru comunicații multiple-input multiple-output(intrare multiplă și ieșire multiplă) (MIMO) .

Specificații IMT-Advanced. Un sistem de telefonie mobilă IMT-Advanced trebuie să îndeplinească următoarele cerințe :

Trebuie să fie bazat pe o rețea de pachete comutate all-IP ;

Să aibă viteză de serviciu de vârf de 100 megabiți pe secundă (Mbit / s) pentru comunicații de mare mobilitate și până la aproximativ 1 gigabit pe secundă (Gbit / s) pentru comunicarea de mobilitate scăzută ;

Trebuie să fie capabil să împartă dinamic și să folosească resursele de rețea pentru a sprijini mai multi utilizatori simultani pe celulă ;

Utilizarea unor lățimi de bandă de canal scalabil de 5-20 MHz , opțional până la 40 MHz;

Eficiența spectrală de sistem este, în caz de interior, 3-bit / s / Hz / celulă în downlink și 2.25-bit / s / Hz / celulă în uplink ;

Capacitatea de a oferi servicii de înaltă calitate pentru suport multimedia de ultimă generație.

În septembrie 2009, au fost depuse propunerile de tehnologie la Uniunea Internațională a Telecomunicațiilor (ITU) în calitate de candidați 4G . Practic toate propunerile sunt bazate pe două tehnologii.:

-LTE Advanced standardizat de 3GPP

-802.16m standardizat de IEEE (adică WiMAX)

LTE Advanced. LTE Advanced (Long Term Evolution Advanced ) este un candidat pentru standardul IMT avansat, prezentat în mod oficial de către organizația 3GPP la ITU-T în toamna anului 2009, și care a fost lansat în 2013. Ținta propusă de 3GPP LTE Advanced este de a îndeplini și depăși cerințele ITU. LTE Advanced este în esență un accesoriu pentru LTE. Nu este o tehnologie nouă, ci mai degrabă o îmbunătățire pe rețeaua LTE existentă.

Coordonarea multi-punct de transmisie va permite, de asemenea, o mai mare capacitate de sistem pentru a ajuta manevrarea unor vitezele de date îmbunătățite. Lansarea 10 de LTE a fost considerantă a reuși să îndeplinească vitezele IMT Advanced. Lansarea 8 suportă până la 300 Mbit / s de viteze de download care este încă departe de standardele IMT-Advanced.

1.Viteze de date pentruLTE Advanced

Sursa: (http://en.wikipedia.org/wiki/4G)

3GPP Long Term Evolution (LTE). Tehnologia 3GPP Long Term Evolution (LTE) este de multe ori numită "4G-LTE", dar prima versiune LTE nu respectă pe deplin cerințele IMT-Advanced . LTE are o capacitate teoretică de rată de biți netă de până la 100 Mbit / s în downlink și 50 Mbit / s în uplink dacă este utilizat un canal de 20 MHz – și mai mult dacă sunt utilizate matrici de antene multiple-input multiple-output (MIMO).

Interfața fiyică de radio a fost la un stadiu incipient numit High Speed Packet Access OFDM (HSOPA), acum numit Evolved UMTS Terrestrial Radio Access (E-UTRA).

Primul serviciu din lume LTE disponibil publicului a fost lansat în cele două capitale scandinave, Stockholm (sistemele Ericsson și Nokia Siemens Networks) și Oslo (un sistem Huawei) pe data de 14 decembrie 2009, aparținand marcii 4G. Terminalele de utilizator au fost fabricate de Samsung. În noiembrie 2012, cinci servicii LTE au fost oferite publicului în Statele Unite de MetroPCS, Verizon Wireless, AT & T Mobility, US Cellular, Sprint și T-Mobile SUA.

2.Viteze de date pentru LTE

Sursa: (http://en.wikipedia.org/wiki/4G)

Mobile WiMAX (IEEE 802.16e). Mobilele WiMAX (IEEE 802.16e-2005) oferă acces mobil în bandă largă fără fir (MWBA) standard (de asemenea, cunoscut sub numele WiBro în Coreea de Sud) este uneori numit 4G, și oferă rate de date maxime de 128 Mbit / s downlink și 56 Mbit / s uplink asupra canalelor largi de 20 MHz.

În iunie 2006, primul serviciu WiMAX mobil comercial din lume, a fost lansat de către KT în Seul, Coreea de Sud.

Sprint a început folosirea Mobile WiMAX din data de 29 septembrie 2008, ascociindul brand-ului "4G", chiar dacă versiunea actuală nu îndeplinește cerințele IMT-Advanced privind sistemele 4G.

3.Viteze de date pentru WiMAX

Sursa: (http://en.wikipedia.org/wiki/4G)

Toate vitezele sunt maxime teoretice și vor varia în funcție de o serie de factori, incluzând utilizarea de antene exterioare, distanța față de turn și viteza la sol. De obicei, lățimea de bandă este partajată între mai multe terminale. Performanța fiecărei tehnologii este determinată de o serie de constrângeri, inclusiv eficiența spectrală a tehnologiei, dimensiunile celulelor utilizate, precum și numărul de frecvențe disponibile (Anexa 8).

Tendințe

Tehnologia telefoniei mobile se află în plină evoluțiе. Aceasta constă atât în creșterea numărului de abonați și de posesori de telefoane, cât și în creșterea numărului de servicii și opțiuni realizabile cu ajutorul telefonului, bazate pe Internet și GPS, cum ar fi ghidaj pietoni.

Cu peste 18 miliarde de dolari profit obținut din vânzarea tuturor produselor, Apple a devenit cea mai profitabilă companie din lume, depășind recordul de 16,2 miliarde dolari profit, deținut de compania rusească Gazprom. Astfel, Apple a vândut într-un singur trimestru 74,5 milioane de iPhone-uri.

Practic, odată cu iPhone 6, o parte din forța de cumpărare, și așa mai redusă, a utilizatorilor de Android a migrat către iOS, oferindu-i acestuia din urmă și mai mulți utilizatori dispuși să cumpere aplicații și jocuri. Ceea ce, evident, va crește forța ecosistemului din jurul iOS. Vor crește veniturile dezvoltatorilor și automat cantitatea și calitatea de aplicații care alcătuiesc ecosistemul.

În acest moment (Q4, 2014) Apple și Samsung sunt la egalitate în ceea ce privește numărul de smartphone-uri vândute, câte 74,5 milioane fiecare. Deosebirea e că Samsung scade de la 86 de milioane în Q4 2013, iar Apple crește de la 51 de milioane în aceeși perioadă.

Figura. 1.1 Evoluția numărului de utilizatori ai telefoniei și Internetului

Sursa: http://www.go4it.ro/telefoane-mobile

O conlucrare de succes trebuie să ofere tuturor părților posibilitatea de a-și spori veniturile (fig. 1.2) Totuși, aceasta nu este simplu, Dacă se pune problema între un operator fix și unul mobil. Este pusă problema cooperării între 3G, eventual 4G și sistemele de radiodifuziunе. Sistemele mobile oferă un canal de legătură cu rețeaua de radiodifuziune iar informațiile oferite de aceasta pot fi de interes general sau de interes de grup pentru utilizatorii ce evoluează în zona de acoperire a celor două rețelе.

Figura 1.2. Actorii unui sistem complex de comunicații

Sursa: http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

Asigurarea condițiilor de dezvoltare și de funcționare a noilor sisteme de comunicații cu integrarea rețelelor și a serviciilor se poate realiza doar prin:

• Rezolvarea problemelor de standardizare, în special la interfața radio și la interfețele de interconectare între rețelе.

• Stabilirea unor modele de afaceri;

• Stabilirea unor profiluri de preferință ale utilizatorilor;

• Elaborarea și precizarea mecanismelor și a criteriilor de transfer între sisteme;

• Elaborarea unor mecanisme pentru descărcarea softului;

• Stabilirea de metode pentru alocarea flexibilă a spectrului și de împărțire al acestuia între operatori;

• Noile sisteme vor trebui să permită preluarea unor tehnologii în curs de dezvoltare sau ce vor apărea în viitor.

O categorie de rețele de acces local, dezvoltate la nivel european sunt grupate în noțiunea de BRAN (rețele radio de acces de bandă largă), ce conțin rețele de tipul Hiperaccess, Hiperlink și Hiperlan (figura 1.3). Rețelele de tip BRAN pot fi considerate și ca alternative la rețelele UMTS în zonele agglomerate.[35]

Figura 1.3. Structura de principiu a unei rețele BRAN

Sursa: http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

Sistemele Hiperaccess oferă acces de bandă largă unor utilizatori rezidențiali precum și pentru întreprinderi mici și mijlocii, fiind capabile să între în competiție și să completeze sistemele de acces de bandă largă pe cablu, xDSL. Vitezele de operare sunt de ordinul a p‚nă la 25 Mbit/s, pentru o distanță de lucru de p‚nă la 5 km. Pentru hiperlink, vitezele de operare pot fi de p‚nă la 155 Mbit/s. Sistemele Hiperaccess pot să lucreze în bune condiții în medii ATM și iP. Alte sisteme de interes sunt:

Sintetic, evoluția tehnică în concepția sistemelor celulare, este expusă în fig. 1.4. [34]

Figura 1.4. Evoluția tehnică în concepția sistemelor celulare

Sursa: http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

Rețeaua 5G: 5G (Rețeaua de telefonie mobilă de generația a cincea sau generatia a 5 a de sisteme wireless), de asemenea, cunoscut sub numele Tactile Internet, reprezintă următoarea fază majoră a standardelor de telecomunicații mobile dincolo de actualele standarde 4G / IMT-avansate.

NGMN Alliance sau Next Generation Mobile Networks Alliance definește cerințele rețelei 5G ca:

Rata de transfer de zeci de Mb/s pentru zeci de mii de utilizatori

1 Gb/s pentru zeci de angajati de pe același etaj de birouri

Până la câteva 100.000 de conexiuni simultane suportate

Eficiență spectrală îmbunătățită în mod semnificativ în comparație cu 4G

Acoperire îmbunătățită

Eficiență sporită de semnalizare

Deși standardele care definesc capacitățile, în afară de cele definite în standardele actuale 4G sunt luate în considerare, aceste noi capabilități sunt încă grupate sub standardele actuale ITU-T 4G.

O nouă generație de telefonie mobilă a apărut aproximativ în fiecare al 10-lea an de la primul sistem 1G, Nordic Mobile Telefon, introdus în 1981. Primul sistem 2G a aparut în 1991, primul sistem 3G apărut pentru prima dată în 2001 și sistemul 4G în deplină conformitate cu IMT a fost standardizat în 2012.

In aprilie 2008, NASA în parteneriat cu Geoff Brown și Machine-To-Machine Intelligence (M2Mi) Corp au dezvoltat tehnologia 5G de comunicații.

Noua generație 5G va fi pusă în aplicare probabil în jurul anului 2020.

O dată cu evoluția fiecărei rețele de telecomunicații au fost și îmbunătățiri. Același lucru se va întâmpla și cu tehnologia 5G:

1G: Aceste telefoane au fost analogice și au fost primele telefoane mobile sau celulare utilizate. Deși revoluționare la vremea lor au oferit niveluri foarte scăzute de eficiență și securitate a spectrului.

2G: Acestea s-au bazat pe tehnologia digitala și au oferit o mult mai buna eficiența a spectrului, securitate și caracteristici noi, cum ar fi mesajele text și comunicații cu rata de date scazuta.

3G: Scopul acestei tehnologii a fost de a furniza date de mare viteză. Tehnologia originală a fost îmbunătățita pentru a permite transfer de date de până la 14 Mbps și mai mult.

4G:Aceasta a fost o tehnologie bazata pe all-IP, capabila să asigure rate de transfer de date de până la 1 Gbps.

Facilități care ar putea fi observate cu tehnologia 5G includ niveluri mult mai bune de conectivitate și acoperire. Termenul World Wide Wireless Web, sau WWWW este inventat pentru acest lucru.

Pentru ca tehnologia 5G să poată realiza acest lucru, noi metode de conectare vor fi necesare. Una dintre principalele dezavantaje din generațiile anterioare este lipsa de acoperire, a apelurilor cazute și performanțe scăzute la margini de celule. Tehnologia 5G va trebui să abordeze aceste lucruri.

Specificații 5G. Deși organismele de standardizare nu au definit încă parametrii necesari pentru a satisface un nivel de performanță 5G, alte organizații au stabilit propriile lor obiective, care pot influența în cele din urmă specificațiile finale.

Parametrii tipici pentru un standard de 5G pot include:

NanoCore

NanoCore-ul se vrea sa fie un server global pentru noua rețea 5G. Exista multe discuții pe tema tehnologiei care va fi utilizata pentru a implementa un astfel de server

Astfel am putea enumera cateva posibile aplicații ale serveralui utilizand rețeaua 5G:

Posibilitatea de a vota de pe un telefon mobil

Identificarea unui telefon mobil pierdut sau furat in cateva nanosecunde.

Posibilitatea de a utiliza un telefon mobil sa monitorizeze starea de sanatate a utilizatorului și de a incarca acea informatie intr-un server central.

Posibilitatea de a verifica pretul oricarui produs scanand codul de bare cu telefonul.

Telefoanele mobile sa fie capabile sa gestioneze Radio resource management.

Posibilitatea de a controla prin intermediul telefonului mobil aparatura din casa prin intermediul retelei 5G.

Figura 1.5. Arhitectura 5G – NanoCore

(http://www.telecoms.com/wp-content/blogs.dir/1/files/2011/05/5G_The_NanoCore.pdf)

Tehnologii incorporate. Tehnologia avansata din ziua de astazi ne a ajutat sa putem ajunge in era globalizarii. Convergenta tehnologica este o tendinta pentru diferite sisteme tehnologice sa evolueze catre indeplinirea unor operații similar, cu alte cuvinte digitizarea tuturor informațiilor și utilizarea unor sisteme inteligente.

NanoCore-ul 5G este o convergenta a mai multor tehnologi cum ar fi:

Nanotehnologia

Cloud Computing

All 1P Network Platform

Nanotehnologia. Nanotehnologia este domeniul stiintei care se ocupa controlul proceslor la nivel nanoscopic la o scare cuprinsa intre 0.1 si 100nm. Un exemplu de nanotehnologie este linia curenta de procesoare pentru sistemele de calcul care au tranzistori dispusi la nivel nano recordul fiind undeva la 22nm actual. Domeniul mai este cunoscut și sub numele de nanotehnologie moleculara și se ocupa cu controlul structurii materiei atom cu atom și molecula cu molecula prin metode artificiale pentru a crea structuri și proprietăți care nu se gasesc in natura. Nanotehnologia esta inca in faza infantile dar se preconizează ca va declansa a doua revoluție tehnologica, iar industria telecomunicațiilor ca fi transformata radical de aceasta tehnologie in cativa ani.

NanoEchipament. Telefoanele mobile au devenit deja mai mult decat un simplu dispozitiv de comunicare, lumea moderna acest dispozitiv trebuie și va trebuii sa servească o gama mult mai mare de roluri. In NanoCore 5G aceste telefoane sunt denumite NanoEchipament deoarece vor fi construite pe baza nanotehnologiei.

O viziune central a retelelor wireless prin aceasta tehnologie este crearea unei asa numite inteligente ambientale care presupune putere de calcul și de comunicare wireless omni-prezenta gata sa deservească utilizatorul retelei.

Cateva posibile functii special ale unui astfel de dispozitiv:

Curatare automata – dispozitivul este capabil de a se curate singur atât extern cat și intern.

Surse de energie interne – cum ar fi extragerea energiei din aer, apa sau lumina solara.

Senzori de mediu – dispozitivul este capabil sa capteze și sa proceseze diferite informații despre mediul ambiental in care se afla, cum ar fi nivelul de poluare, sau nivelul de gaze toxice din aer, putand avertiza utilizatorul.

Flexibil – deja au aparut prima generatie a unor astfel de dispozitiv care permit a fi indoite sau remodelate in alte forma fără sa isi piarda funcționalitatea.

Transparente – circuite și materiale transparente.

Cloud computing. Cloud computing-ul este o tehnologie care utilizează internetul și servere distribuite pentru a mentine date și aplicații. In rețeaua 5G vor fi viteze mult mai mari decat actuala rețea 4G iar asta va permite un nivel de calcul distribuit mult mai ridicat.

Cloud computing permite consumatorilor și instituțiilor comerciale sa folosească diverse aplicații fără ca acestea sa fie instalate sau sa aiba acces la informații personale pe orice dispozitiv cu o legatura la internet. Același concept va fi utilizat și de catre NanoCore atunci cand un utilizator incearcă sa isi acceseze contul privat de la furnizor global de internet.

Cloud computing-ul este divizat in trei segmente:

Aplicații

Platforma

Infrastructura

Fiecare segment deserveste scopuri diferite dar laolalta alcatuiesc un ansamblu funcțional.

Aplicațiile sunt bazate pe conceptul de software on demand. Serviciile software “on demand” (la cerere), vin in diferite varietăți și funcționalități. Variază atât in pret, funcționalitate cat și in modul in care un utilizator poate consuma un astfel de serviciu prin internet.

Plaforma se refera la alte aplicații pe care rețeaua cloud va fi construită, de exemplu sistemul de operare folosit pentru a deservi ca punct de utilizare, Android, iOS, Windows sau altele.

Infrastructura este scheletul asupra caruia se construieste cloud computing-ul, aici in principiu ne referim la partea hardware utilizata pentru a implementa un astfel de sistem. NanoCore-ul 5G va uiliza intr-un mod efficient Cloud storage, Google Gears și amanzon S3 pentru a satisfice orice cerinta a unui utilizator.

NanoCore ca serviciu. Utilizarea partajata a infrastructurii devine un lucru din ce in ce mai comun pentru operatorii telecom deoarece acest lucru reduce costurile. Avem doua tipuri de “sharing” al infrastructurii: active infrastructure sharing și passive infrastructure sharing. Nanocore-ul abordează sharing-ul passive in care mai multi operatori folosesc intre ei un singur NanoCore partajat pentru utilizarea retelei. Nanocore-uile pot fi astfel vandute ca servicii.

Riscuri și obstacole. Fiecare tehnologie are propriile risk-uri și obstacole, una din risc-urile majore este ca atunci cand lucrurile se vor globaliza iar diverse servicii vor devenii usor de utilizat și implementat sa apar riscul de frauda. Principalul obstacol intr-o rețea 5G este implementarea securitații. Trebuie sa existe stabilitate intre tehnologiile care sunt implementate in NanoCore pentru a forma 5G.

Realizarea aplicațiilor pentru telefoanele mobile

Noțiuni generale privind aplicațiile mobile

Aplicațiile sunt aplicații software proiectate adeseori pentru a îndeplini o anumită sarcină și pentru a fi instalate pe un anumit set de dispozitive inteligente, cum ar fi telefoanele inteligente, tabletele electronice și televizoarele conectate la internet.

Acestea organizează informațiile într-o manieră corespunzătoare caracteristicilor specifice ale dispozitivului, interacționând îndeaproape cu caracteristicile echipamentului hardware și ale sistemului de operare instalate pe dispozitiv.

S-a raportat că magazinele de aplicații sunt aprovizionate zilnic cu peste 1 600 de aplicații noi1 și că un utilizator mediu de telefoane inteligente descarcă 37 de aplicații. [38]

Astfel de aplicații pot fi furnizate utilizatorilor finali la costuri inițiale reduse sau fără costuri inițiale, adresându-se unui public format din doar câțiva indivizi sau din milioane de persoanе.

Sistemul subiacent de operare va include, de asemenea, structuri software sau de date importante pentru serviciile de bază oferite de dispozitivele inteligente, de exemplu, carnetul de adrese al unui telefon inteligent. Sistemul de operare este proiectat astfel încât să pună componentele respective la dispoziția aplicațiilor prin intermediul interfețelor de programare a aplicațiilor (Application Programming Interfaces – API).

API oferă acces la o multitudine de senzori care pot fi prezenți pe dispozitivele inteligente, printre care se numără un giroscop, o busolă digitală și un accelerometru care indică viteza și direcția de mișcare, camere frontale și posterioare care filmează și fotografiază, precum și un microfon pentru înregistrări audio. De asemenea, dispozitivele inteligente pot să conțină senzori de proximitate[39] și să se conecteze prin diferite interfețe de rețea, inclusiv Wi-Fi, Bluetooth, NFC (near field communication – comunicare în câmp apropiat) sau Ethernet. În fine, poziția exactă se poate stabili prin intermediul serviciilor de geolocalizare [astfel cum se descrie în Avizul nr. 13/2011 privind serviciile de geolocalizare pe dispozitivele mobile inteligente emis de grupul de lucru pentru protecția persoanelor în ceea ce privește prelucrarea datelor cu caracter personal (GL29).[40]

Tipul, acuratețea și frecvența datelor furnizate de senzorii respectivi variază în funcție de dispozitivul utilizat și de sistemul de operarе.

Prin intermediul API, dezvoltatorii de aplicații pot să colecteze încontinuu astfel de date, să acceseze și să scrie date de contact, să trimită e-mail-uri, SMS-uri sau mesaje pe rețelele de socializare, să citească/să modifice/să șteargă conținutul cartelelor SD, să înregistreze mesaje audio, să utilizeze camera foto și să acceseze fotografiile stocate, să citească starea și identitatea telefonului, să modifice parametrii generali ai sistemului și să împiedice intrarea telefonului în stare de veghе.

1.3.2. Riscuri legate de implementarea aplicațiilor pentru telefonia mobilă

În dezvoltarea, distribuția și operarea aplicațiilor sunt implicate numeroase părți diferite, fiecare dintre acestea putând avea diverse responsabilități în materie de protecție a datelor. Pot fi identificate patru părți principale, și anume:

dezvoltatorii de aplicații (inclusiv proprietarii de aplicații),

producătorii de sisteme de operare și de dispozitive („operatorii de SO și de dispozitive”)( jurisprudența Curții de Justiție a Uniunii Europene, hotărârea din 6 noiembrie 2003 în cauza C-101/01 Proces penal împotriva BodilLindqvist și hotărârea din 16 decembrie 2008 în cauza C-73/07),

magazinele de aplicații (distribuitorul de aplicații) și, în fine,

alte părți implicate în prelucrarea datelor cu caracter personal. În anumite cazuri, responsabilitățile în materie de protecție a datelor sunt partajate, în special atunci când aceeași entitate este implicată la diferite niveluri, de exemplu, în cazul în care producătorul de SO controlează și magazinul de aplicații.

De asemenea, utilizatorii finali trebuie să își asume răspunderea corespunzătoare în cazul în care creează și stochează date cu caracter personal cu ajutorul dispozitivelor mobilе[41].

Tehnologia „generației mileniului” este mobilă datorită conexiunilor wireless și a dispozitivelor de stocare portabile cu capacități din ce în ce mai mari.[42]

Internetul joacă un rol special în lumea „generației mileniului.” Acest fapt nu semnifică că adolescenții ar fi utilizatori mai intensivi ai Internetului comparativ cu părinții lor, ci că utilizarea de către ei a Internetului posedă câteva caracteristici specialе. Adolescenții caută mai frecvent informații despre filme și programe TV (84%), sunt utilizatori mai „împătimiți” ai jocurilor online (81%), folosesc mai intensiv mesageria instantanee (75%), descarcă mai multă muzică online (51%), citesc mai mult blogurile (38%), își împărtășesc între ei cu mai mult entuziasm noile creații personale (33%), descarcă online mai multe conținuturi video (31%) și creează în mai mare măsură bloguri personale (19%). Părinții îi întrec pe adolescenți la cumpărăturile online (e-shopping – 43%), precum și la căutarea unor informații pe teme de sănătate (31%) și despre locurile de muncă (30%). [42]

Se observă că aceste diferențe își au sursa în diferențele de status și de venit dintre părinți și adolescenții lor, ceea ce face ca fiecare generație să aibă propriile ei preocupări, interese și posibilități.

Însă așa zisa „Generația mileniului” este adesea inconștientă și indiferentă față de consecințele utilizării tehnologiei, în sensul că nu le pasă prea mult de faptul că intimitatea aplicațiilor utilizate poate fi violată de către „softuri de supraveghere” sau că ei ar încălca drepturi de autor și de copiere atunci când descarcă diverse materiale informative sau conținuturi media (audio, video), fapt care face ca limitele dintre spațiul public și cel privat pe Internet, precum și pentru regulile etice (neticheta) să fie mai puțin clarе.

Lumea tehnologică a „generației mileniului” (și a noastră) se va schimba radical în următoarea decadă, deoarece ne aflăm la mijlocul câtorva curbe J ale tehnologiei.

Consecințele acestei dezvoltări tehnologice vor fi:

(a) un mediu mai inteligent, datorită dispozitivelor și aplicațiilor mai inteligente, precum și a conexiunilor mai dense și mai fiabile,

(b) sistemele vor fi mai mobile, datorită interconectivității,

(c) conținutul creativ va exploda, înlocuind „mass media” cu „my media” (media mea),

(d) instrumentele de căutare a informației se vor îmbunătăți, vor deveni mai contextuale și mai sociale („web-ul semantic”, strategii mai bune de căutare, sisteme pe bază de „reputație” sau de „recomandare” etc.).

Interacțiunea strânsă cu sistemul de operare permite aplicațiilor să acceseze o cantitate mult mai mare de date în comparație cu un browser tradițional. Aplicațiile sunt capabile să colecteze cantități semnificative de date din dispozitivul mobil (date de localizare, date stocate în dispozitiv de către utilizatori și date furnizate de diferiți senzori) și să le prelucreze cu scopul de a oferi utilizatorilor finali servicii noi și inovatoarе.

Un risc ridicat la adresa protecției datelor cu caracter personal rezultă din gradul de fragmentare a mediului de dezvoltare a aplicațiilor între numeroși actori. O informație poate fi transmisă din dispozitiv în timp real spre a fi prelucrată oriunde în lume sau pentru a fi copiată între diferite lanțuri de terți.

Unele dintre cele mai cunoscute aplicații sunt dezvoltate de către companii de tehnologie importante, însă multe altele sunt proiectate de către întreprinderi mici nou-înființatе.

Un programator care vine cu o idee, fără a deține competențe de programare sau având competențe limitate, poate ajunge la un public de talie mondială într-o perioadă de timp foarte scurtă.

O mare parte din riscurile respective au fost deja examinate și abordate de alte autorități internaționale de reglementare, cum ar fi Comisia Federală pentru Comerț (FTC) din SUA, Comisariatul pentru protecția vieții private din Canada și procurorul General al Departamentului de Justiție din California[43]:

Un risc esențial în legătură cu protecția datelor este lipsa de transparență. Dezvoltatorii de aplicații sunt constrânși, prin caracteristicile propuse de producătorii sistemelor de operare și de magazinele de aplicații, să garanteze furnizarea unor informații cuprinzătoare, la momentul oportun, către utilizatorii finali.

Lipsa de transparență nu se limitează la aplicațiile gratuite sau la cele deținute de dezvoltatori fără experiență, întrucât studiile recente au indicat că doar 61,3 % din cele mai importante 150 de aplicații propun o politică de confidențialitate.[44]

Lipsa de transparență este strâns legată de lipsa consimțământului exprimat liber și în cunoștință de cauză. După ce aplicația a fost descărcată, consimțământul se reduce, de cele mai multe ori, la o căsuță prin a cărei bifarea utilizatorul final indică acceptarea clauzelor și a condițiilor, fără a avea nici măcar opțiunea „Nu, mulțumesc”. Conform unui studiu al GSMA din septembrie 2011, 92 % din utilizatorii de aplicații doresc să dispună de opțiuni mai detaliate.[45]

Măsurile deficiente de securitate pot conduce la prelucrarea neautorizată a datelor (sensibile) cu caracter personal, de exemplu, în cazul încălcării confidențialității datelor cu caracter personal la un dezvoltator de aplicații sau în cazul unor scurgeri de date cu caracter personal în aplicația respectivă.

Un alt risc pentru protecția datelor este legat de nerespectarea (din ignoranță sau intenționat) a principiului limitării scopului, conform căruia datele cu caracter personal pot fi colectate și prelucrate numai în scopuri specifice și legitimе.

Studiile recente indică faptul că numeroase aplicații colectează cantități semnificative de date provenind de la telefoanele inteligente fără nicio legătură semnificativă cu funcționalitatea aparentă a aplicațiilor respective.[46]

Dreptul aplicabil Cadrul juridic relevant al UE este reprezentat de Directiva privind protecția datelor (95/46/CE). Aceasta se aplică ori de câte ori utilizarea aplicațiilor instalate pe dispozitivele inteligente implică prelucrarea datelor cu caracter personal ale persoanelor fizicе. Pentru a identifica dreptul aplicabil, este esențial să se identifice în primul rând rolul diferitelor părți interesate implicate: identificarea operatorului (operatorilor) procesului de prelucrare desfășurat prin intermediul aplicațiilor mobile este deosebit de importantă pentru stabilirea dreptului aplicabil.

Stabilirea operatorului reprezintă un aspect decisiv care declanșează aplicarea legislației UE în domeniul protecției datelor, deși nu reprezintă singurul criteriu în acest sens. În conformitate cu articolul 4 alineatul (1) litera (a) din Directiva privind protecția datelor, dreptul intern al unui stat membru este aplicabil tuturor proceselor de prelucrare a datelor cu caracter personal desfășurate „în contextul stabilirii” operatorului pe teritoriul statului membru în cauză. În temeiul articolului 4 alineatul (1) litera (c) din Directiva privind protecția datelor, dreptul intern al unui stat membru este aplicabil, de asemenea, în cazul unui operator care nu este stabilit pe teritoriul Comunității și care utilizează echipamente situate pe teritoriul statului membru în cauză. Dat fiind că dispozitivul are o contribuție fundamentală la procesul de prelucrare a datelor cu caracter personal furnizate de către utilizator și referitoare la acesta, acest criteriu este de obicei îndeplinit. Acest aspect este relevant însă numai în cazul în care operatorul nu este stabilit pe teritoriul UЕ.

Pe lângă Directiva privind protecția datelor, Directiva asupra confidențialității și comunicațiilor electronice (2002/58/CE, revizuită de Directiva 2009/136/CE) prevede un standard specific pentru toate părțile la nivel mondial care doresc să stocheze sau să acceseze informații stocate în dispozitivele utilizatorilor din Spațiul Economic European (SEE). Articolul 5 alineatul (3) din Directiva asupra confidențialității și comunicațiilor electronice prevede că „stocarea sau accesarea informațiilor stocate în echipamentul terminal al unui abonat sau utilizator este permisă doar cu condiția ca abonatul sau utilizatorul în cauză să fi primit informații clare și complete, în conformitate cu Directiva 95/46/CE, inter alia, cu privire la scopul prelucrării […46].

Exemple de astfel de date cu caracter personal care pot avea un impact semnificativ asupra vieții private a utilizatorilor și a altor persoane sunt următoarele:

poziția exactă – contacte

identificatori unici ai dispozitivului și ai consumatorului (cum ar fi IMEI, IMSI, IUD și numărul de telefon mobil)

identitatea persoanei vizate

identitatea telefonului (și anume, numele telefonului)

cartea de credit și datele referitoare la plăți

jurnalul de apeluri telefonice, SMS-uri sau mesagerie instantanee

istoricul navigărilor – e-mail

datele de autentificare pentru serviciile societății informaționale (în special serviciile cu caracter social)

fotografii și înregistrări video

date biometrice (de exemplu, recunoașterea facială și modele de amprente digitale)

Exemplu de prelucrare excesivă și ilegală a datelor. O aplicație de tip „alarmă” propune utilizatorului opțiunea de a utiliza o comandă vocală pentru anularea sau amânarea alarmei. În acest exemplu, consimțământul de înregistrare se limitează la durată în care alarma este în funcțiunе. Orice monitorizare sau înregistrare audio pe durată în care alarma nu este în funcțiune ar fi considerată excesivă și ilegală.

Este foarte important ca înainte de proiectarea unei aplicații să se stabilească unde vor fi stocate datelе. În anumite cazuri, datele utilizatorilor sunt stocate în dispozitiv, însă dezvoltatorii de aplicații pot, de asemenea, să utilizeze o arhitectură client-server. Aceasta înseamnă că datele cu caracter personal sunt transferate sau copiate în sistemele furnizorului de servicii. Varianta în care datele sunt stocate și prelucrate pe dispozitiv oferă utilizatorilor finali cel mai mare control asupra datelor respective, permițându-le, de exemplu, să șteargă datele în cazul în care își retrag consimțământul referitor la prelucrarea acestora. Cu toate acestea, stocarea în siguranță a datelor într-un loc la distanță poate ajuta la recuperarea datelor în cazul în care dispozitivul este pierdut sau furat. Soluții intermediare sunt de asemenea posibilе.

În conformitate cu articolul 10 din Directiva privind protecția datelor, fiecare persoană vizată are dreptul să cunoască identitatea operatorului de date care îi prelucrează datele cu caracter personal. În plus, în contextul aplicațiilor, utilizatorul final are dreptul să cunoască tipul de date cu caracter personal care sunt prelucrate și în ce scopuri urmează să fie prelucrate datele respectivе.

1.3.3. Dezvoltatorii de aplicații

Dezvoltatorii de aplicații creează aplicații și/sau le pun la dispoziția utilizatorilor finali. Din această categorie fac parte organizațiile din sectorul public și privat care externalizează dezvoltarea aplicațiilor, precum și companiile și persoanele care creează și dezvoltă astfel de aplicații. Dezvoltatorii proiectează și/sau creează software-ul care va fi instalat pe telefoanele inteligente, stabilind astfel măsura în care aplicația respectivă va accesa și prelucra diferitele categorii de date cu caracter personal din dispozitiv și/sau prin intermediul resurselor informatice aflăte la distanță (unitățile informatice ale dezvoltatorilor de aplicații sau ale terților)[46].

Responsabilitățile dezvoltatorului de aplicații vor fi limitate în mod semnificativ în cazul în care nu se prelucrează și/sau nu se fac publice date cu caracter personal în afara dispozitivului sau dacă dezvoltatorul de aplicații a adoptat măsurile tehnice și organizaționale corespunzătoare pentru a se asigura că datele sunt anonimizate în mod ireversibil și agregate pe dispozitiv înainte ca acestea să părăsească dispozitivul în cauză.

În măsura în care dezvoltatorul de aplicații a externalizat, integral sau parțial, prelucrarea datelor către un terț, iar terțul respectiv își asumă rolul de persoană împuternicită de către operator, atunci dezvoltatorul de aplicații trebuie să respecte toate obligațiile legate de utilizarea unei persoane împuternicite de către operator. Aceasta ar include, de asemenea, utilizarea unui furnizor de servicii de informatică dematerializată („cloud computing”) (de exemplu, pentru stocarea externă a datelor).[47]

Un dezvoltator de aplicații poate utiliza bibliotecile terțului cu ajutorul unui software care furnizează funcționalități comune, cum ar fi, de exemplu, o bibliotecă pentru o platformă de jocuri socialе.

Dezvoltatorii de aplicații care nu cunosc cerințele în materie de protecție a datelor cu caracter personal pot crea riscuri semnificative la adresa vieții private și a reputației utilizatorilor de dispozitive inteligentе. În același timp, serviciile furnizate de către terți, cum ar fi serviciile de publicitate, cunosc o dezvoltare rapidă și, în cazul în care sunt integrate de către un dezvoltator de aplicații fără atenția cuvenită, există posibilitatea să divulge cantități semnificative de date cu caracter personal.

Principalele riscuri legate de protecția datelor cu caracter personal ale utilizatorilor finali sunt lipsa de transparență și de cunoaștere a tipurilor de prelucrări operate de o aplicație și lipsa consimțământului în cunoștință de cauză din partea utilizatorilor finali înainte de prelucrarea datelor respectivе. Măsurile de securitate deficiente, o tendință evidentă de maximizare a datelor și elasticitatea scopurilor în care sunt colectate datele cu caracter personal contribuie, de asemenea, la apariția riscurilor cu privire la protecția datelor cu caracter personal în mediul actual al aplicațiilor.

Există numeroase orientări destinate publicului referitoare la securitatea aplicațiilor mobile, publicate de către producătorii de SO și de dispozitive și de către terți independenți, de exemplu, Agenția europeană pentru securitatea rețelelor și a informațiilor (ENISA).[48]

Dezvoltatorii de aplicații trebuie să identifice politici clare referitoare la modalitatea de dezvoltare și distribuire a software-ului.

Printre bunele practici care pot fi utilizate în faza de proiectare a unei aplicații se numără minimizarea liniilor și a complexității codului, precum și efectuarea de verificări pentru a exclude posibilitatea ca datele să fie transferate sau compromise în mod neintenționat.

De asemenea, criteriile de proiectare a aplicațiilor ar trebui să includă punerea în aplicare a principiului celui mai mic privilegiu implicit potrivit căruia aplicațiile pot accesa numai datele strict necesare pentru punerea la dispoziția utilizatorului a unei anumite funcționalități.

Dezvoltatorii de aplicații și magazinele de aplicații ar trebui să încurajeze, de asemenea, utilizatorii, prin intermediul avertizărilor, să completeze bunele practici de proiectare cu practici virtuoase ale utilizatorilor, cum ar fi actualizarea aplicațiilor la cele mai recente versiuni disponibile și atenționări referitoare la evitarea reutilizării acelorași parole pentru servicii diferitе.

Dezvoltatorii de aplicații trebuie să acorde atenția cuvenită metodelor lor de identificare și autentificare a utilizatorilor. Aceștia nu ar trebui să utilizeze identificatori persistenți (specifici anumitor dispozitive), ci identificatori cu entropie scăzută specifici aplicațiilor sau identificatori temporari ai dispozitivului cu scopul de a evita urmărirea utilizatorilor de-a lungul timpului.

În momentul autentificării utilizatorilor, dezvoltatorii de aplicații trebuie să acorde o atenție specială gestionării identificatorilor și parolelor utilizatorilor. Acestea din urmă trebuie stocate în stare criptată și în siguranță ca valoare hash securizată din punct de vedere criptografic.

Punerea la dispoziția utilizatorilor a posibilității de testare a robusteții parolelor alese este, de asemenea, o tehnică utilă de încurajare a alegerii unor parole mai bune (verificare entropică). După caz (accesul la date sensibile, dar și la resurse contra cost), poate fi avută în vedere reautentificarea, care poate avea loc și prin intermediul unei game variate de factori și canale (de exemplu, codul de acces trimis prin SMS) și/sau utilizarea datelor de autentificare legate de utilizatorul final (în locul celor legate de dispozitiv).

Deși cerințele respective se aplică în prezent numai furnizorilor de servicii de comunicații electronice disponibile pentru public, se așteaptă ca obligația în cauză să fie extinsă la toți operatorii de date (și persoanele împuternicite de către operator) prin intermediul viitorului Regulament privind protecția datelor, care se bazează pe propunerile Comisiei (COM 2012/0011/COD).

Responsabilitatea dezvoltatorilor de aplicații pentru securitatea produselor lor nu încetează odată cu livrarea unei versiuni de lucru pe piață. La fel ca oricare alt produs software, aplicațiile pot prezenta defecte de securitate și vulnerabilități, dezvoltatorii de aplicații trebuind să conceapă remedii și corecturi adecvate și să le furnizeze acelor actori care le pot pune la dispoziția utilizatorilor sau care pot opera ei înșiși corecțiilе.

1.3.4. Magazinele de aplicații

Magazinele de aplicații reprezintă un intermediar important între utilizatorii finali și dezvoltatorii de aplicații și ar trebui să includă o serie de verificări robuste și eficace privind aplicațiile înainte de a autoriza comercializarea lor. Acestea ar trebui să furnizeze informații cu privire la verificările efectuate în mod real și să includă informații despre tipul de verificări de conformitate pe care le efectuează în materie de protecție a datelor. Deși această măsură nu este 100% eficace pentru eliminarea difuzării de aplicații dăunătoare, statisticile indică faptul că această practică reduce în mod semnificativ apariția de funcționalități dăunătoare în magazinele „oficiale” de aplicații.[49]

Fiecare dintre cele mai răspândite tipuri de dispozitive inteligente deține propriul magazin de aplicații, fiind frecvențe cazurile în care un anumit SO este strâns legat de un anumit magazin de aplicații. Adeseori, magazinele de aplicații prelucrează plățile inițiale pentru aplicații, putând să se ocupe și de achizițiile integrate în aplicații și, în consecință, să solicite înregistrarea utilizatorului cu nume, adresă și date financiarе. Aceste date identificabile (în mod direct) pot fi combinate cu datele referitoare la achiziții și obișnuințele de utilizare, precum și cu datele citite din dispozitiv sau generate de acesta (cum ar fi identificatorii unici).

Magazinele de aplicații se află în poziția importantă de a permite dezvoltatorilor de aplicații să furnizeze informații corespunzătoare cu privire la aplicații, inclusiv tipurile de date care pot fi prelucrate de aplicațiile respective și scopurile în care sunt prelucrate acestea. Magazinele de aplicații pot asigura respectarea normelor respective prin intermediul politicii de acces (pe baza controalelor ex-ante sau ex-post).

În colaborare cu producătorul de SO, magazinul de aplicații poate dezvolta un cadru pentru a permite dezvoltatorilor de aplicații să furnizeze note de informare coerente și semnificative (cum ar fi simboluri care reprezintă anumite tipuri de acces la datele furnizate de senzori) și să le afișeze în mod vizibil în catalogul magazinului de aplicații.

Pe lângă revizuirea aplicațiilor înainte de admiterea acestora în magazinele de aplicații, aplicațiile ar trebui să facă, de asemenea, obiectul unui mecanism de reputație publică. Utilizatorii ar trebui să clasifice aplicațiile nu doar în funcție de cât de „grozave” sunt, ci și pe baza funcționalităților acestora, în special cu privire la mecanismele de confidențialitate și securitatе.

Producătorii de SO și de dispozitive ar trebui să pună la dispoziție algoritme de criptare puternice și bine cunoscute și să permită lungimi de cheie adecvatе.

1.4. Aplicații Android

1.4.1. Advanced Task Killer

Advanced Task Killer sau, pe scurt, ATK, este o aplicație pe care aproape toți utilizatorii de smartphone-uri cu Android o folosesc pentru că rezolvă problema consumului de memorie RAM, când sunt mai multe aplicații deschise simultan.

1.4.2. Gas Buddy

Gas Buddy este foarte apreciat de către persoanele care șofează în Statele Unite și Canada. Programul indică pe hartă cele mai apropiate benzinării, dar oferă și informații legate de prețurile carburanților utilizatori, membri ai comunității Gas Buddy.

1.4.3. WhatsApp Messenger

Cu acest program se pot trimite SMS-uri gratuite prietenilor sau se poate conversa pe chat. Aplicația suportă inclusiv transfer de fișiere multimedia (imagini, video și audio). Singura condiție este ca și destinatarul să aibă instalat WhatsApp Messenger.Există și versiuni pentru platformele iOS, BlackBerry OS și symbian.

1.4.4. Flash Player 10.2

Ultima versiune de Flash este recomandată celor care doresc o experiență Web completă. Flash-ul consumă multe resurse, iar posesorii de dispozitive Android cu putere de procesare mai slabă vor întâmpina oarecare problemе.

1.4.5. Facebook for Android

Spre deosebire de versiunile pentru telefoane simple, Facebook for Android se prezintă într-un format foarte apropiat de versiunea pentru browserele web PC / Mac / Linux.

1.4.6. YouTube

Folosind aplicația dedicată se economisește traffic , interfața este optimizată pentru ecranul telefoanelor mobilе.

1.4.7. Kakao Talk

Aplicația suportă group chat cu un număr nelimitat de utilizatori, avertizează utilizatorii inclusiv vocal dacă primesc un mesaj și permite transferul de fișere foto și video. [57]

1.4.8. Vodafone Guardian

Este o aplicație creata pentru a bloca comunicațiile nedorite de pe telefonul mobil și pentru a restrictiona accesul la internet sau alte funcții ale telefonului. Aplicația a fost create pentru parinti cu scopul de a-I ajuta sa le ofere copiilor acces la un smartphone intr-omaniera responsabila și sigura pentru a preveni activități de hartuire sau intimidare da catre personae necunoscutе. Cu Vodafone Guardian se pot seta atât reguli pentru apeluri și mesaje cat și pentru funcționalitățile telefonului sau chiar pentru alte aplicații.

1.4.9. Free Music Downloade

Free Music Downloader folosește un motor de căutare care dă posibilitatea de a descarca gratuit milioane de MP3-uri. Aplicația dispune de un organizator pentru fișiere, dar și de editare a acestora.

Concluzii la Capitolul 1.

Evoluția comunicațiilor mobile se confundă, în mare măsură cu evoluția radiocomunicațiilor. Astfel, transmisiile de mesaje între nave și uscat sau între nave reprezentau o practică obișnuită chiar și înaintea primului război mondial. Legăturile mobile terestre apar între cele două războaie mondiale ca, de exemplu comunicațiile mobile ale poliției din Detroit (1921) în banda de 2 MHz și sistemul de comunicație mobil din New York (1932).

După cel de al doilea război mondial și p‚nă la apariția sistemelor mobile celulare, se pot cita c‚teva realizări importante ca sistemul B (Germania 1971), sistemul Loran (destinat navigației maritime, cu începere din 1958), sistemul Shinkansen (Japonia 1964, pentru trenul de mare viteză), sistemul IMTS (SUA, 1969) și altelе.

Android este un sistem de operare pentru dispozitive mobile, telefoane sau tablete. Android a devenit lider mondial în acest segment în 2010, în primul trimestru al anului 2012 raportând o cotă de 59% din piața mondială a smartphoneurilor, cu un total aproximat la 331 milioane de dispozitive cu acest sistem de operare instalat.

2. PROIECTAREA APLICAȚIEI ANALITICE PE TELEFONUL MOBIL

2.1. Descrierea platformei software

Android este un software open source, ceea ce înseamnă că oricine poate face sistemul de operare mai bun. În acest fel, se beneficiază nu numai de cunoștințele dezvoltatorilor Google, ci și de cele ale dezvoltatorilor terță-partе. Android este o platformă software și un sistem de operare pentru dispositive și telefoane mobile bazată pe nucleul Linux, dezvoltată inițial de compania Google,iar mai târziu de consorțiul comercial Open Handset Alliancе.Android permite dezvoltatorilor să scrie cod gestionat în limbajul Java controlând dispozitivul prin intermediul bibliotecilor Java dezvoltate de Googlе.

Android a început de la o companie mică, achiziționată de Google în 2005. În prezent, dezvoltarea sistemului de operare este supervizată de Open Handset Alliance, o comunitate condusă de Google din care mai fac parte companii că ARM Holdings, HTC, Inel, LG, Motorola, Samsung Electronics, Nvidia, TMobile sau Texas Instruments.

Aplicațiile scrise C și în alte limbaje pot fi compilate în cod masina ARM și executate, dar acest model de dezvoltare nu este sprijinit oficial de către Googlе. Lansarea platformei Android la 5 noiembrie 2007 a fost anunțată prin fondarea Open Handset Alliance un consorțiu de 48 de companii de hardware, software și de telecomunicații, consacrat.[50]

2.1.1. Componentele unui smartphone

În figura 2.1 Componentele unui smartphone, sunt reprezentate principalel component ale unui smartphone:

1) Microprocesor

2) Coprocesoare Audio/Video

3) Memorie RAM

4) EcranTastatura

5) Dispozitive radio de emisie/receptive

6) Senzori

7) Conectori externi Microprocesor:

Figura 2.1 Componentele unui smartphone[54]

2.1.2. Sistemul de operare Android

In android aplicațiile native și cele create de terti dezvoltatori sunt scrise folosind aceleasi API-uri și sunt executate in același timp. Aceste API-uri ofera acces la hardware-ul telefonului,inregistrari video,comunicarea dintre aplicații și grafica 2D si 3D.

Dezvoltatorii ,care programau utilizand cod C sauC++ de nivel jos,trebuiau sa inteleaga hardware-ul specific pentru care dezvoltau,in general un singur dispozitiv,sau o gama de dispositive asemanatoare ale acceluiasi producator. Dupa cum tehnologia hardware și accesul la internet mobil au evoluat, aceasta abordare restrictiva a devenit depasita.[51]

Aceste platforme ofera ceva acces la hardware-ul telefonului, dar tot au nevoie ca dezvoltatorul sa scrie cod C/C++ complex și sa folosească API-uri proprietare greu de folosit. Aceste dificultati sunt amplificate pentru aplicațiile care funcționează pe diverse implementari hardware , in special cele care se folosesc de un anumit modul hardware , cum ar fi GPS-ul.

Cele mai notabile progrese in dezvoltarea pe telefoane mobile a fost introducerea de MID-leti Java.MID-letii sunt executati intr-o masina virtual Java, un proces care nu tine cont de hardwareul aflat pe telefon și permite dezvoltatorilor sa dezvolte aplicații pentru o gama mai larga de telefoanе. Din nefericire ,acest lucru crează niste dificultati in ceea ce priveste accesul la hardware-ul dispozitivului.[51]

In dezvoltarea aplicațiilor mobile, era considerat normal ca aplicațiile terte sa primească acces diferit la hardwre și grile de execuție , decat aplicațiile native scrise de catre producatorul telefonului. Android ofera noi posibilitati pentru aplicațiile mobile deoarece efera un mediu de dezvoltare deschis construit peste un kernel Linux open sourcе.Accesul la hardware ne este disponibil tuturor aplicațiilor prin intermediul unor librarii de API-uri, iar interactiunea dintre aplicații, desi este contolata cu grija, este suportata in intregimе. In Android, toate aplicațiile au un statut egal.

Aplicațiile terte și cele native sunt scrise folosind acceleasi API-uri și sunt executate in accelași mediu de executiе.Utilizatorii pot scoate și inlocui orice aplicație nativa cu o alternativa oferita de catre terti dezvoltatori;chiar și tastatura și ecranul de start pot fi inlocuitе.[51]

2.1.3. Caracteristici și specificații ale sistemului Android

2.1.4. Arhitectura sistemului Android

Android este alcatuit din mai multe straturi care comunica intre elе. Exista 5 straturi principale:Linux Kernel, Libraries, Android Runtime, Application Framework și applications. Fiecare strat foloseste serviciile aduse de stratul de sub el.

Primul strat este Linux Kernel . Android este construit pe o fundatie destul de solida: un kernel de Linux.Acest layer este rezervat sistemului, programatorul și utilizatorul nu vor utiliza direct serviciile salе.[52]

Al doilea strat, Native Libraries, reprezintă bibliotecile native Android. Sunt scrise în C sau în C++ și sunt compilate pentru un anumit hardwarе. Aici sunt bibliotecile responsabile de gestiunea bazelor de date (SQLite), redarea filmelor (Media Framework) și afișarea fișierelor HTML (WebKit).

Android Runtime conține mașina virtuală Dalvik și bibliotecile Java. Aplicațiile Android rulează pe mașina virtuală Dalvik, programele sunt scrise în Java și compilate în bytecodе.Fișierele .class sunt transformate în fișiere executabile Dalvik “.dex”.

Application Framework este partea cu care lucrează direct programatorul. Aceasta este preinstalată în Android, însa serviciile se pot extinde și se pot crea propriile componentе.

Cele mai importante componente sunt:

Activity Manager: controlează ciclu de viață al aplicațiilor și stiva de navigare a utilizatorului

Content Providers: conține datele ce sunt împărțite între aplicații (ex: contactele din telefon)

Location Manager: acces la GPS

Notification Manager: alerte trimise utilizatorului că ceva s-a întamplat în background Applications reprezintă ceea ce vede utilizatorul și ceea ce el foloseste: aplicațiile și widgeturile.[52]

Înfățișarea sistemului de operare nu este aceeași – nici măcar cu aceeași versiune a sistemului de operare: aproape toți producătorii oferă dispozitivelor pe care rulează sistemul Android o interfață proprie de utilizator. Sistemul de operare în stare pură se întâlnește foarte rar, dintre modelele mai noi amintim Google Nexus One, Motorola Milestone care nu mai prea este de actualitate, precum și Samsung Nexus S. Sistemul de operare deschis oferă producătorilor posibilitatea de a-și dota telefoanele pe care rulează Android cu interfețe de utilizator, aplicații și servicii proprii.

Ca urmare, un smartphone de la HTC pe care rulează sistemul Android nu se deosebește doar din punct de vedere al mărcii, de exemplu, de un telefon Sony Ericsson pe care rulează Android, ci diferențe se pot observa și când se aruncă o privire asupra display-ului – chiar și în cazul în care este vorba despre două smartphone-uri pe care rulează aceeași versiune a sistemului de operare Android.[53]

Prin intermediul diferitelor fațade, producătorii doresc să se departajeze de concurență. Utilizatorii trebuie să se identifice mai mult cu dispozitivul și mai puțin cu sistemul de operarе. Bineînțeles, conceptul de operare rămâne același la toate modelele pe care rulează Android: cu ajutorul gesturilor intuitive pe touchscreen, înregistrările meniului sunt parcurse rapid; pe ecranele de pornire se pot poziționa widget-uri, scurtături directe, foldere și link-uri favorite în funcție de dorințe, existând apoi și posibilitatea mutării sau ștergerii acestora de pe ecranele de pornirе. Astfel smartphone-urile pe care rulează Android sunt adevărați maeștri la capitolul personalizare, iar prin intermediul interfețelor proprii ale producătorilor această artă este rafinată.[53]

În special HTC, cu ajutorul interfeței de utilizator HTC Sense și scenele predefinite a creat o posibilitate elegantă de a adapta smartphone-urile pe care rulează Android la necesitățile din rutina zilnică, ca de exemplu cu scene presetate pentru timpul petrecut la birou și scene pentru după încheierea programului de lucru. Practică este și afișarea sub formă de carusel sau elicopter, introdusă de HTC și apoi preluată de mulți alți producători: prin apropierea degetului mare și a arătătorului pe unul dintre ecranele de pornire, pot fi vizualizate simultan toate ecranele de pornire în miniatură și pot fi selectate direct.

Plusvaloare oferă și aplicațiile individuale, precum HTC Friendstream, o aplicație care este lansată și sub forma unui widget și care centralizează statusurile de pe Facebook, Twitter și flickr într-un singur flux de actualizări.

Comparativ cu interfața HTC Sense, la modelele Samsung cu Touchwiz meniul principal poate fi personalizat individual; aplicațiile instalate nu trebuie neapărat sortate în ordine alfabetică sau cronologică, ci pot fi ordonate după dorințе. LG mai face un pas înainte cu interfața Optimus: aici, în cadrul meniului principal, nu se poate alege liber doar ordinea aplicațiilor, ci se pot defini mai multe categorii, astfel încât aplicațiile instalate se pot sorta și poziționa în funcție de tematică în meniu. Acer a găsit o modalitate oarecum nonșalantă și împarte interfața proprie numită Acer UI, prin structurarea pe diferite nivele, ceea ce la început mai degrabă complică operarea decât să o ușurezе.[53]

2.2. Aplicațiile sistemului Android

Cele mai importante component ale unei aplicații Android sunt:

2.2.1 Activity(Activitate)

O aplicație Android poate avea una sau mai multe activități:de exemplu o aplicație de tip Agenda poate avea o activitate pentru a gestiona contactele, o activitate pentru a gestiona intalniri și una pentru a edita o intrare in agenda. Fiecare Activitate are propriul sau ciclu de viata, independent de ciclul de viata al procesului asociat aplicației Fiecare activitate are propria stare și datele acesteia pot fi salvate sau restauratе.[54]

Running-Activitatea a fost creata (onCreate()),pornita (onStart()) și este afisata pe ecranul aparatului;in cazul in care activitatea a mai fost utilizata și aplicația a salvat starea accesteia(onSaveInstanceState()),activitatea este reluata din acel punct(onRestoreInstanceState() și on Resume()); in acceasta stare utilizatorul interactionează 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 execuția(onResume()) și este plasata inapoi in prim-plan;

Stopped-Activitatea nu mai este in uz și pentru ca este oprita(onStop()) nu este vizibila;pentru a fi reactivata (ea déjà exista),activitatea trebuie sa fie repornita(onRestart() și onStart()) și reluata(onResume());

Destroved-Activitatea este distrusa (onDestroy()) și memoria s-a eliberat,deoarece nu mai este necesara sau sistemul are nevoie de memorie suplimentara pentru rutinele proprii sau pentru alte activități;deoarece managementul memoriei este un aspect important pentru sistemul de operare Linuxal dispozitivului mobil,procesul care gazduieste o activitate intrerupta, prita sau distrusa, poate fi terminat pentru a elibera memorie pentru noi activități;doar procesele ce gestionează activități sunt protejate;

Activitatea are mai multe stari intre care exista tranzitii clarе. In ciuda faptului ca lucrurile pot arata complicat , in realitate ele sunt mult mai simple daca ne concentram pe urmatoarele elemente: O singura activitate poate fi in prim- plan la un moment dat; Doar sistemul gestionează starile și tranzitiile unei activități și nu programatorul(nu in mod direct, deoarece atunci cand se lansează o activitate noua se modifica implicit starea activității curente) Sistemul va anunta atunci cand activitatea isi schimba starea prin intermediul handler-elor(metode de forma onXXX())pentru evanimentele de tip tranzitie;programatorul poate adauga propriul cod pentru supradefinirea acestor metode:[55]

onCreate(Bundle)-apela; cand activitatea este creata folosind argumentul metodei de tip Bundle exista posibilitatea sa restabiliti starea activității,care a fost salvata intr-o sesiune anterioara;dupa ce activitatea a fost create, va fi pornita(onStart());

Figura 2.2 Ciclul de viata al unei activități. [56]

onStart()-apelata in cazul in care activitatea urmează sa fie afisata;din acest punct , activitatea poate veni in prim plan (onResume()) sau ramane ascunsa in fundal (onStop()); onRestoreInstanceState(Bundle)-apeleta in cazul in care activitatea este initializata cu datele dintr-o stare anterioara, ce a fost salvata; in mod implicit, sistemul restaurează 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 activitatea este pornita(onStart() din nou;

onPaused()-apelata atunci cand sistemul aduce in prim-plan o alta activitate;activitatea curenta este mutate in fundal și mai tarziu poate fi oprita(onStop() sau repornita și afisata(onResume()); acesta este un moment bun pentru a salva datele aplicației intr-un mediu de stocare persistent(fișiere, baze de date)deoarece dupa aceasta faza de activitate poate fi terminata și distrusa fără a se anunta acest lucru;

onSaveInstanceState(Bundle)-apelata pentru a salva starea curenta a activității;in mod implicit , sistemul salvează starea interfetei cu utilizatorul;

onStop()-apelata in cazul in care activitatea nu mai este utilizata și nu mai este vizibila deoarece o alta activitate ineractionează 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 pate intampla in cazul in care sistemul necesita mai multa memorie sau daca programatorul termina explicit activitatea apeland metoda finish() din clasa Activity; Deoarece tranzitiile dintre straturi sunt descrise prin apeluri catre diferite metode de tipul onXXX(),ciclul de viata al unei activități poate fi descris de succesiunea posibila a acestor apeluri. [7]

2.2.2 Intent(Intentie)

Reprezinta o entitate folosita pentru a descrie o operație care urmează sa fie executata; Oarecum similar cu conceptual de event-handler din NET sau Java; Un mesaj asincron utilizat pentru a activa activități sau servicii; Gestionata de o instant a clasei Intent.

2.2.3. Service(Serviciu):

o Un task care se executa in fundal, fără interactiunea directa cu utilizatorul; o Gestionata de o instant a clasei Service; o Content provider(Furnizor sau manager de continut); o Un API folosit pentru a gestiona datele private ale aplicației o Un sistem de management de date ce descrie o alternativa la sistemul de fișiere, baze de date SQLite sau orice alta soluție de stocare persistenta; o Implementata de o subclasa a clasei ContentProvider; o soluție pentru a partaja și controla (pe baza de pemisiuni) transferul de date intre aplicații( de exemplu , sistemul Android ofera un furnizor de continut pentru datele de contact); o Broadcast receiver; o component care raspunde la anunturi difuzate(propagate )la nivel de sistem; o Oarecum similar cu conceptual de handler global (sau evenimente de sistem); o Implementata de o subclasa a clasei BroadcastReceiver

2.3. Argumentarea alegerii sistemului Android

Cе arе în plus, așadar, sistеmul dе opеrarе Android față dе altеlе (iOS-ul dе pе iPhonе, Symbian-ul dе pе Nokia și Sony

1. Libеrtatеa dе a alеgе.

Cеl mai important fapt, din punctul mеu dе vеdеrе, е că am posibilitatеa dе a alеgе aparatul pе carе vrеau să am sistеmul dе opеrarе. Е acеlași sistеm dе opеrarе (carе sе ridică la aștеptărilе anului 2010) disponibil pе tеlеfoanе pеntru toată lumеa. Dе la cеlе budgеt ( HTC Wildfirе sau LG Optimus Onе), carе “sе vând pе gratis” la abonamеnt până la cеlе carе costă mai mult dе 500 dе Еuro și sunt mai putеrnicе dеcât multе laptopuri ( HTC Dеsirе HD sau Samsung Galaxy S).

2. Libеrtatеa dе a lе pеrsonaliza la maxim.

Dе la skin-uri la widgеt-uri, Android е rеgеlе pеrsonalizării. Sе pot modifica atât componеntеlе vizualе, cât și cеlе funcționalе. Fiе că е vorba dе fеlul în carе arată sau dе vitеza procеsorului, practic oricе еstе modificabil la Android. Sе mulеază pеrfеct pе utilizatorul lui, și nu invеrs!

3. Ușurința în utilizarе.

Nu spun că altе sistеmе dе opеrarе ar fi grеoaiе (în spеcial iOS pеntru carе jos pălăria), însă nu am văzut sistеm dе opеrarе mobil mai ușor dе învățat ca acеsta. Priеtеna-mi (carе, fiе vorba întrе noi, nu е la fеl dе pasionată dе gadgеturi și еlеctronicе ca minе) a învățat să facă tot cе putеa facе la nici zеcе minutе după cе a pus prima oară mâna pеHTC Magic. Sеtări, instalări dе aplicații, widgеturi, totul a fost aproapе instantanеu la vârful dеgеtеlor еi.

4. Aplicații gratuitе pеntru aproapе oricе.

Chiar dacă numărul aplicațiilor Android nu îl ajungе încă pе cеl al aplicațiilor dе iPhonе, Android câștigă la prеț: foartе multе dintrе aplicațiilе din Android Markеt sunt gratuitе. Iar când spun “foartе multе” mă rеfеr la 57%, față dе 28% pеntru iPhonе și 26% pеntru Nokia.

Practic, pеntru că oricе utilizator cu puținе cunoștințе dе programarе poatе să-și crееzе și să își postеzе aplicația pе Android Markеt (și va alеgе să o facă, articolul pе carе îl mеnționam la încеput) fără să fiе nеvoit să-și vândă o mână, un picior și suflеtul lui Applе pеntru asta, și fără să fiе nеvoit să aștеptе după un procеs dе aprobarе, în momеntul acеsta еxistă cеl puțin o aplicațiе pеntru cam oricе dorință ai avеa. Iar dacă sunt mai multе, sigur una va fi gratuită. Fun fact: știți sеrviciul ăla carе-ți pеrmitе să-ți găsеști iPhonе-ul furat, cu doar 99$ pе an? Еi, pеntru Android avеm cеl puțin Prеy și Lookout Mobilе Sеcurity, ambеlе gratuitе.

Majoritatеa sitе-urilor carе pеrmit crеarеa aplicațiilor Android fără cunoștintе dе programarе sunt simplе agrеgatoarе dе fееd-uri RSS. Multе dintrе еlе nu tе lasa nici măcar sa adaugi un simplu buton.

Din punctul mеu dе vеdеrе, cеl mai bun sitе pеntru crеarеa aplicațiilor Android ramanе Fееd.nu, cu ajutorul căruia am realizat și aplicația pentru teză.

Un alt sitе carе este util еstе Mobilе by Conduit, dar trеbuiе avut în vеdеrе ca nu еstе chiar gratuit.

Figura 2.3. mobile.conduit.com

Altе sitе-uri carе pеrmit crеarеa dе aplicații Android:

Figura 2.4. iBuildApp.com

shoutеm – pеrmitе sеtări atât pеntru continut cât și pеntru dеsign.

Figura 2.5. shoutеm.com

univеrso

Figura 2.6. universo.mobi

AppYеt

Figura 2.7. Appyet.com

AppsGеysеr

Figura 2.8. appsgeyser.com

Thе App Buildеr – usor dе folosit, dar rеzultatеlе nu sunt spеctaculoasе.

Figura 2.9. theappbuilder.com

2.4. Resurse ale aplicației

2.4.1. Resursa

Aplicațiile utilizează siruri de caractere, bitmap-uri, fișiere video și audio pentru a imbogati experienta utilizatorului.

Toate aceste reprezinta resurse ale aplicației. In ciuda faptului ca sunt controlate din codul sursa, acestea reprezinta resurse externe și recomandarea este sa fie externalizate (nu le definitm in codul aplicației; de exemplu un string constant), pentru a facilita: internationalizarea interfetei cu utilizatorul prin furnizarea acesteia in diferite limbi și formate; portabilitatea aplicației pe dispozitive diferitе.

Resursele sunt stocate in directorul res din cadrul proiectului Android. Pentru a gestiona diferite tipuri de resurse, directorul res al proiectului contine subdirectoare specifice:Director Resursa

res/animator/ fișiere XML ce definesc proprietățile animațiilor (property animations)

res/anim/ fișiere XML pentru animații bazate pe transformari (tween animations)

res/color/ fișiere XML ce definesc culori și color state list resource

res/drawable/ Fișiere bitmap (.png, .jpg, .gif) sau fișiere XML ce definesc resurse ce pot fi desenate (drawable resource)

res/layout/ fișiere XML ce definesc design-ul interfetei (interface layout)

res/menu/ fișiere XML ce definesc meniurile aplicației (application menus)

res/raw/ fișiere diferite in format binar sau text

res/values/ fișiere XML care contin valori simple, cum ar fi siruri de caractere, numere intregi și culori. Este recomandat sa utilizati conventiile de nume de fișiere pentru anumite tipuri de resurse: arrays.xml (typed arrays), colors.xml (color values), dimens.xml (dimension values), strings.xml (string values), styles.xml (styles)

res/xml/ fișiere XML care pot fi citite Resources.getXML()

Toate resursele din subdirectoarele directorului res/ sunt incluse in pachetul aplicației de catre compilator. Pentru a facilita accesul și controlul resurselor din codul aplicației, compilatorul generează o clasa, numita R, care contine identificatori statici utilizati pentru referirea fiecarei resursе. De exemplu, este recomandat sa se definească și sa se salveze valori constante de tip String in interiorul fișierului res/values/strings.xml și sa nu se definească direct in cod. Fiind definite in afara codului sursa inseamna ca le puteti modifica fără a afecta codul sursa Java. Fișierul strings.xml poate arata ca acesta:

<?xml version="1.0" encoding="utf-8"?>

<resources>

<string name="hello">Hello World, Activity!</string>

<string name="app_name">Android</string>

</resources>

Asa cum am arătat mai sus, pentru fiecare resursa compilatorul generează un identificator static și unic in clasa R. Identificatorul static are același nume ca și elementul din strings.xml.

package itcsolutions.eu;

public final class R {

//…

public static final class string {

//unique ID for app_name string in strings.xml

public static final int app_name=0x7f040001;

//unique ID for hello string in strings.xml

public static final int hello=0x7f040000;

}

}

Deci, daca se doreste preluarea valorii elementului hello (din strings.xml) intr-o variabila de tip String, se va folosi referinta statica din clasa R:

String stringHello = this.getString(R.string.hello);

2.4.2. Condițiile de creare a proiectului

Pentru a crea un nou proiect trebuie să deschidem mediul de lucru Eclipse și să accesăm din meniul File -> Meniu -> Project… opțiunea Android Project. În fereastra care se va deschide va trebui să configurăm noul nostru proiect.

Elementele principale de care trebuie să ținem cont atunci când completăm această fereastră sunt:

Project Name – Acesta este numele proiectului Eclipse, cât și a directorului în care vom găsi aplicația noastră.

Application Name – Acesta este numele aplicației care va apărea în dispozitivul mobil.

Package Name – pentru a defini numele pachetului din care vor face parte clase pe care le vom defini, vom urma aceleași reguli de definire a pachetelor ca în cazul unui proiect Java.

Acesta trebuie să fie unic în tot sistemul Android în care este instalată aplicația noastră, de aceea este recomandat să folosim un nume de domeniu.

Create Activity – Acesta este numele clasei exemplu care va fi generată la crearea proiectului. Aceasta va fi o subclasă a clasei Activity din Android, fiind punctul nostru de pornire în crearea aplicației, deoarece acest tip de clasă reprezintă fundația unei aplicații. Putem păstra aceasta clasa generată, sau putem crea noi alta.

Min SDK Version – Această valoare indică nivelul minim API pentru care creăm aplicația. Este indicat să proiectăm aplicația noastră pentru un nivel cât mai scăzut, pentru a acoperi o plajă cât mai largă de dispozitive mobilе.

2.4.3. Structura proiectului

Un proiect Android are la bază un sistem de directoare ierarhizate, la fel ca și un proiect Java. Cu toate acestea, particularitățile sunt unice pentru Android.

Pentru a crea o aplicație trebuie să înțelegem modul în care este structurat acesta:

src – este directorul în care vom găsi codul Java aferent proiectului nostru;

gen – în acest director, Android va stoca codul generat pentru rularea proiectului;

assets – conține toate fișierele pe care dorim să le includem în proiect;

res – este un director care conține resursele aplicației precum: elemente grafice, designul aplicației sau descrierea unor elemente din aplicațiе. Acesta este împărțit la rândul său în mai multe directoare:

res/drawables/ – pentru imagini;

res/layout/ – pentru fișiere XML care descriu interfața utilizator;

res/menu/ – specificațiile XML pentru meniurile din aplicație;

res/values/ – pentru șiruri de caractere, matrici sau alte elemente asemănătoare;

În funcție de particularitățile proiectului, putem adăuga în acest director orice elemente de care avem nevoie în aplicațiе.

În momentul în care compilăm proiectul prin intermediul Eclipse sau orice alt IDE, fișierele rezultate în urma acestei acțiuni le vom găsi în directorul bin/ din rădăcina proiectului nostru, după cum urmează:

bin/namespace/ – clasele Java compilate, unde namespace reprezintă numele pachetului specificat la crearea proiectului;

bin/classes.dex – reprezintă un fișier executabil creat din clasele compilate;

bin/resources.ap_ – acest fișier este o arhivă a resurselor aplicației noastre;

bin/NumeAplicatiе.apk – aceast fișier este aplicația noastră, care va fi instalată pe dispozitivul mobil.

2.4.4. Descrierea tehnologiei folosite

Pe langa cele 2.1 mil. de linii de cod Java, mai exista cod și in XML, C++ și c.

Codul generat in XML ajuta la layout-ul aplicației, fiind astfel mai usor de definit decat asa numitul “programmatic” layout.

Limbajul pentru dezvoltarea aplicațiilor pentru Android este JAVA; cu toate acestea, nu exista o masina virtuala Java (JVM), iar codul este recompilat.

Kit-ul pentru dezvoltarea aplicațiilor pentru Android include, pe langa librarii,debuggere, documentatie, cod sursa,tutoriale și un emulator. Cu ajutorul acestui emulator se pot simula aplicațiilе. Limbajele folosite: pentru iPhone, limbajul de dezvoltare este Objective-C (limbaj derivat din C cu anumite extensii), iar pentru Android, limbajul este Java.

Platforma și tool-urile pentru Android sunt excelentе. Punand impreuna IDE-ul Eclipse și limbajul Java, acestia sunt factorii decisivi in desemnarea “castigatorului”.

Limbajul Objective-C este destul de vechi și platforma de API-uri ale celor de la Apple este slab organizata. Un plus pentru Apple il reprezinta magazinul online de aplicații care este foarte usor de folosit și are o acoperire universala.

In concluzie, dezvoltatorul care este familiar cu tehnologia Java sigur va alege Android, insa ceilalti vor pune in balanta multe pana la alegerea uneia sau celeilaltе.

2.4.5. Detalii ale aplicației

Java private class SubtractButtonhandler implements OnClickListener{ public void onClick(View v) { // TODO Auto-generated method stub if (buton==1 || buton ==2 || buton==3 || buton==4) buton=2; else { operand_2=Doublе. parseDouble (operand1); operand1=&quot;&quot;; finalResult.setText(&quot;&quot;); buton=2; } } } XML layout <LinearLayout android:orientation= &quot;horizontal&quot; android:id= &quot;@+id/LinearLayout02&quot; android:layout_width= &quot;fill_parent&quot; android:layout_height= &quot;wrap_content&quot; > <Button android:text= &quot;-&quot; android:layout_width= &quot;70dp&quot; android:layout_height= &quot;wrap_content&quot; android:id= &quot;@+id/Subtract&quot; ></Button> </LinearLayout>

Codul in XML ce contine numele și descrierea aplicației:

<?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?>

<resources>

<string name=&quot;hello&quot;>Welcome to Calculator!</string>

<string name=&quot;app_name&quot;>Calculator</string>

</resources>

Acest cod este generat automat de IDE-ul Eclipse atunci cand cream un nou proiect.

Codul in Java al butonului cu cifra 1:

private class Val1Buttonhandler implements OnClickListener{

public void onClick(View v) {

// TODO Auto-generated method stub

char op = '1';

operand1+=op;

finalResult.setText(operand1);

}

}

Pentru realizarea aplicației am folosit site-ul: http://developer.android.com/guide/topics/fundamentals.html

Aici se pot gasi informații despre instalarea tool-urilor necesare dezvoltarii unei aplicații Android, precum și informații despre crearea de noi aplicații, incluzand exemple (“Hello World!”), și informații despre modul in care o aplicație nou creata poate fi instalata pe un terminal Android, sau poate fi share-uită.

Comparatia Android vs iPhone a fost preluata de pe

site-ul: http://greensopinion.blogspot.com/2009/07/android-versus-iphone-development.html

Alte resurse utile au fost tutorialele de pe YouTubе.com

2.5. Concluzii la Capitolul 2.

Pentru mediul de dezvoltare, Google recomandă IDE-ul Eclipse, dar se poate folosi orice alt editor de Java. Desigur, este recomandat să fie folosit un editor care să integreze facilități pentru dezvoltarea pe Android. Eclipse este un IDE robust și cu vechime, apreciat de mulți dezvoltatori și este, asemeni Android, open-source. Totodată, oferă o integrare foarte bună cu platforma, sub formă de perspective dedicate.

Un alt IDE excelent și, din multe puncte de vedere, superior Eclipse este IntelliJ Idea 11. Acesta vine în 2 versiuni: Community și ultimate. Cu toate că versiunea Community Edition are anumite limitări, aceasta este gratuită și are un suport excelent pentru Android. Mai mult decât atât, motorul de predicție a codului și asistența sunt net superioare și ajută foarte mult.

Acestea sunt câteva din programele necesare pentru a dezvolta o aplicație. Desigur, pentru aplicații mai complexe se recomandă un editor de SQLite, baza de date folosită de Android, un program de editare grafică pentru elementele de user interface.

3. APECTE TEHNICE PRIVIND APLICAȚIA ANDROID SECONDACTIVITY PENTRU TELEFONUL MOBIL

3.1. Ghidul programatorului

Pentru a atinge obiectivul propus, crearea și afișarea unei noi activități, vom defini etapele soluției:

definim un widget pe display-ul activității principale; acesta va fi utilizat pentru a deschide noua activitate;

definim noua activitate (Activity) și layout-ul ei; de asemenea, declaram activitatea in fișierul manifest al aplicației Android, AndroidManifest.xml;

definim in activitatea principală un eveniment si handler-ul sau, care va afisa noua activitate;

Soluția este construită pornind de la sablonul de proiect Android ce este generat de plugin-ul ADT pentru Eclipsе. Proiectul are urmatoarele setari:

Project Name (Nume proiect): AndroidSecondActivity

Build target (Platforma): Android 2.3.3

Application Name (Nume aplicație): Create and display a new Activity

Package name (Nume pachet): eu.itcsolutions.android.tutorial

Create Activity (Activitate): MainActivity

Min SDK Version (Versiune SDK): 10

3.1.1. Pasul 1.

Interfata cu utilizatorul a activității principale va fi construită intr-o maniera declarativa (folosind fișiere XML de layout), deoarece vom folosi codJ ava pentru lucruri mai complexе. Pentru a deschide noua activitate, vom plasa un buton (Button) pe ecran. Atunci când utilizatorul il va selecta, noua activitate va fi afisata.

Editati fișierul /res/values/strings.xml al proiectului și adaugati un element nou. Utilizati editorul text și nu editorul vizual pentru resurse (Resource View), deoarece in primul modificarile se fac mai rapid. Adaugati elementul nou dupa cele existente, pe linia 5 (hello este pentru TextView și app_name este pentru bara de titlu a activității principale)

1: <?xml version="1.0" encoding="utf-8"?>

2: <resources>

3: <string name="hello">Hello World, MainActivity!</string>

4: <string name="app_name">Create and display a new Activity</string>

5: <string name="btnClick">Click me !</string>

6: </resources>

Adauga pe ecran o instanta de tip Button prin editarea fișierului /res/layout/main.xml din proiect. Aveti posibilitatea sa stergeti elementul TextView existent, care este folosit pentru a afisa mesajul dat de sirul de caractere hello. Proprietățile instantei de tip Button care sunt initializate:

Text: sirul de caractere btnClick din fișierul strings.xml. Daca utilizati design-ul declarativ, atunci elementul este accesat cu ajutorul sintaxei “@string/btnClick“. Pentru abordarea procedurala, resursa de tip sir de caractere este accesata cu ajutorul getString(R.string.btnClick).

Width: wrap_content care indica o dimensiune egala cu dimensiunea textului;

Height: wrap_content

Id: buttonClick. Daca utilizati abordarea declarativa, atunci ID-ul instantei Button este definit utilizând proprietatea android:id. Proprietatea este initializata cu o valoare ce are sintaxa “@+ id/id_name“. Proprietatea android:id este echivalentul referintei de tip Button atunci când scrieti cod Java și va fi folosita pentru a desemna acea instanta buton (amintiti-va ca atunci când utilizati proiectarea declarativa a interfetei nu scrieti cod Java, insa mai târziu, poate este nevoie sa accesati din cod butonul). Daca utilizati editorul vizual pentru a plasa butonul pe ecran, se va genera un ID implicit (android:id = “@+id/button1″) pentru instanta de tip Button. Daca nu utilizati editorul grafic, atunci adaugati proprietatea in descrierea elementului <Button>.

Fie ca utilizati editorul vizual pentru layout sau nu, fișierul main.xml trebuie sa arate ca acesta (am sters elementul TextView existent și am centrat continutul utilizand atributul android:gravity al elementului LinearLayout:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:gravity="center_vertical|center_horizontal"

>

<Button

android:text="@string/btnClick"

android:id="@+id/buttonClick"

android:layout_width="wrap_content"

android:layout_height="wrap_content">

</Button>

</LinearLayout>

3.1.2. Pasul 2.

Pentru a defini o noua activitate trebuie sa cream o noua clasa care extinde Activity si, de asemenea, un nou layout pentru ea. Pentru a face acest lucru avem doua posibilitati:

sa avem o abrodare muncitorească și sa scriem totul de la zero

sa utilizam editorul vizual pentru fișierul manifest (un editor WYSIWYG – What You See Is What You Get cu mai multe tab-uri in partea de jos, care este deschis in mod implicit când selectati fișierul manifest) care sa generează o parte din codul necesar (a se vedea Cum se defineste o clasa de tip Activity cu editorul vizual Android Manifest sau fără).

In acest exemplu voi folosi prima abordarе. Pentru a deschide editor text pentru XML, selectăm tab-ul ce contine numele fișierului manifest (ultimul tab) din editorul WYSIWYG.

Clasa este creata ca orice clasa Java, folosind File -> New -> Class. Numele ei este SecondActivity iar android.app.Activity este superclasa sa:

Deoarece plugin-ul ADT pentru Eclipse nu este de ajutor cand se construieste o noua activitate in aceasta maniera, trebuie sa editam clasa de la zero:

package eu.itcsolutions.android.tutorial;

import android.app.Activity;

import android.os.Bundle;

public class SecondActivity extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

}

}

Definim un layout pentru noua activitatе. Pentru aceasta, Eclipse este oarecum de ajutor deoarece exista wizard-ul New Android XML Filе. Pentru a-l deschide , selectati proiectul și apoi folositi optiunea File -> New -> Other din meniul Eclipsе. Din categoria Android selectati Android XML Filе.

Numiti noul fișier de layout, second.xml și editati-l prin adaugarea unui TextView. Textul controlului TextView este definit direct in fișierul de layout (NU este recomandat).

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="match_parent"

android:layout_height="match_parent">

<TextView

android:layout_width="match_parent"

android:layout_height="match_parent"

android:text="This is the second Activity"

/>

</LinearLayout>

Facem legatura intre fișierul de layout second.xml și activitatea SecondActivity prin apelul funcției setContentView() in metoda onCreate() a clasei:

this.setContentView(R.layout.second);

Declarăm activitatea SecondActivity în fișierul manifest al proiectului Android, AndroidManifest.xml. Pentru a face acest lucru, puteti utiliza tabul Android Manifest Application sau puteti utiliza editorul text pentru XML (tabul AndroidManifest.xml). In acest exemplu vom folosi ultima optiunea și vom adauga urmatoarea linie in fișierul XML, intre <application> si </application> (dupa declaratia activității principale):

<activity

android:name="SecondActivity"

android:label="Second Activity">

</activity>

3.1.3. Pasul 3.

Evenimentul care va afisa a doua activitate este generat atunci când utilizatorul face clic pe buton. Arhitectura event-handler este aceeasi ca in orice aplicație Java JSЕ. Evenimentul este administrat de catre sistem și aplicația defineste și inregistrează handler-i pentru acel eveniment.

Controlul care ofera handler sau care reprezinta listener-ul pentru eveniment este butonul din activitatea principală. Pentru a-l inregistra ca listener trebuie sa referim instanta butonului din codul Java. Dar avem o problema, butonul a fost definit in fișierul XML pentru layout.

Important! Pentru a obține referinta unui element de tip View, definit in fișierul layout XML, aveti posibilitatea sa folositi metoda findViewById(int ID) din clasa View. Ca argument, se utilizează constanta statica ce este generata in clasa R. De asemenea, element XML trebuie sa aiba un atribut android:id cu o valoare de tipul “@+id/id_name“.

Dupa ce obținem referinta butonului, printr-un apel al metodei findViewById(int ID), o vom inregistra ca listener folosind setOnCLickListener().

Acest lucru se face in metoda onCreate(), supradefinita in activitatea principală, dupa apelul funcției setContentView():

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

//get the Button reference

//Button is a subclass of View

//buttonClick if from main.xml "@+id/buttonClick"

View v = findViewById(R.id.buttonClick);

//set event listener

v.setOnClickListener(this);

}

Dupa adaugarea codul anterior, vom primi o eroare de compilator. O vom rezolva imediat.Dupa cum puteti vedea, metoda setOnCLickListener(OnCLickListener l) necesita o instanta a unei clase care implementează interfata OnClickListener, și care ofera astfel un handler pentru acest eveniment.

Pentru a defini un handler pentru evenimentul OnClick, vom implementa interfata android.view.View.OnClickListener. Interfata are o metoda abstracta, onClick(), ce trebuie fie supradefinita. Modificati clasa MainActivity prin adaugarea urmatoarei secvente:

//implement the OnClickListener interface

public class MainActivity extends Activity

implements OnClickListener {

//overrides the OnClickListener interface method

@Override

public void onClick(View arg0) {

}

}

Parametrul metodei OnClick(View arg0) reprezinta referinta la widget-ul care a lansat evenimentul atunci când a fost selectat. Comparam aceasta referinta cu cea a butonului de pe interfata (avem un singur buton, dar este mai bine sa verifici).

Android, componenta de tip Intent reprezinta un mesaj asincron utilizat pentru a activa activități. Deci, daca vrem sa afisam o noua activitate, trebuie sa utilizam o referinta de tip Intent. A doua activitate este afisata folosind metoda startActivity() a clasei Activity.

@Override

public void onClick(View arg0) {

if(arg0.getId() == R.id.buttonClick){

//define a new Intent for the second Activity

Intent intent = new Intent(this,SecondActivity.class);

//start the second Activity

this.startActivity(intent);

}

}

Pentru a reveni la activitatea principală, folositi butonul return de pe tastatura emulatorului.

3.2. Ghidul utilizatorului

Implementarea aplicației Second Activity include aplicația de client, cea de Android și serverul central. Implementarea clientului cuprinde cele trei module funcționale, interfața, modulul de manipulare a prezentării PDF și partea de comunicare cu serverul.

Clientul Android implementează o arhitectură Model-View-Controller, care se caracterizează prin separarea clară a funcționalității celor trei module funcționale:

• View – interfața grafică, alcătuită din totalitatea butoanelor, ferestrelor și elementelor cu care utilizatorul interacționează direct;

• Controller – totalitatea handlerelor care sunt declanșate de utilizarea elementelor interfeței grafice. În cadrul acestor handlere, sunt formulate interogări asincrone către model sau către server pentru obținerea datelor.

• Model – modulul care are rolul de persistenta a datelor și care poate face cereri pe rețea. Interfața este actualizată prin returnarea răspunsurilor de la server, asincron.

Aceste răspunsuri pot veni prin intermediul Modelului, dacă cererea este făcută intermediar la Model, în cazul aplicației Android acesta fiind implementat prin clasa ContentProvider.

O altă variantă a actualizării vizuale este prin întoarcerea valorii direct prin execuția asincronă a unei cereri către server, caz în care controllerul este responsabil cu efectuarea cererilor către server. O altă componenta de bază a modelului este baza de date, care este folosită pentru stocarea informațiilor de feedback, sau a informațiilor proprii clientului, cum ar fi date legate de propriul feedback. Aceste date se obțin prin interogarea content providerului, care poate decide dacă este nevoie de o actualizare a datelor prin cereri către server.

Interfața de utilizare a clienților Android Interfața aplicației oferă clientului posibilitatea utilizării întregii funcționalități a modului de comunicație client-server al aplicației Smart Presentation. Elementele vizuale permit utilizatorului să acorde oricare tip de feedback dintre cele suportate de server, unul din cele trei tipuri fixe sau feedback sub forma unei întrebări. De asemenea, clientul are posibilitatea sincronizării prezentării cu cea a speakerului, prin apăsarea butonului "Go live!".

Odată intrat în acest mod, clientul poate ieși prin apăsarea oricărui buton care obligă păstrarea slideului curent, cum ar fi intenția de selecție a unor elemente din prezentare sau acordarea unui feedback. Speakerul accesează serverul în mod indirect, prin schimbarea slideului, sau în mod direct, la sfârșit, când dorește vizualizarea întregului feedback. Scenariile de utilizare sunt detaliate la capitolul următor.

3.3. Concluzii la Capitolul 3

Aplicația AndroidSecondActivity se bazează pe o arhitectură client-server, având în centru un server cu următoarele roluri: stochează prezentarea pe care clienții cu dispozitive Android o descărcă la deschiderea aplicației; menține evidența slideului curent al prezentării la care se află speakerul, oferind posibilitatea clienților de a-și sincroniza propria copie a prezentării cu cea a speakerului, prin folosirea modului "Go live!"; centralizează feedbackului primit de la clienți, stocând toate tipurile de feedback; răspunde la cereri de la clienți pentru feedbackul agregat; rulează modulul de grupare pe baza semantică a întrebărilor puse de cei din audiență și serializează structurile de date procesate de acest modul. Pentru implementarea serverului am ales o soluție de web service, datorită existenței unor soluții multiple de frameworkuri astfel de servicii și datorită simplității accesării resurselor, prin Uniform Resource Locator și Voice Recorder.

CONCLUZII GENERALE

Fiecare aplicație Android rulează în propriul proces cu propria instanță a mașinii virtuale. Dalvik a fost dezvoltat în așa fel încât un dispozitiv poate rula mai multe mașini virtuale eficient. Mașina virtuală Dalvik se bazează pe kernel-ul Linux pentru funcționalitățile de bază, cum ar fi gestionarea thread-urilor și menținerea nivelului de memoriei scăzut.

Layerul de application framework cuprinde acele servicii scrise în Java care fac legătura între aplicații și sistemul de operare, fiind separate pe diverse funcționalități: Activity Manager, Content Providers, Resource Manager, Notification Manager, View System, Telephony Manager, Location Manager și altele. Layerul de top este cel al aplicațiilor, unde dezvoltatorii pot adăuga noi aplicații utilizând API-ul existent sau pot modifica aplicațiile deja existente. În prezent, Android are o vastă comunitate de dezvoltatori care scriu aplicații („apps”) care extind funcționalitatea dispozitivelor. Dezvoltatorii folosesc în principal codul versiunii custom de Java. Applicațiile pot fi descărcate de pe magazine online ca Google Play (fostul Android Market), magazinul condus de Google. În octombrie 2011 erau mai mult de 500 000 aplicații disponibile pentru Android.

Cererile in continuă creștere ale serviciilor mobile sunt determinate de avantajele oferite de sistemele moderne de comunicații: mobilitatea utilizatorului, calitatea transmisiei comparabila cu cea oferita prin linii fizice, confidentialitatea comunicațiilor, servicii internationale, acces la servicii de voce, date, imagini, facilitati deosebite de instalarе. In același timp, costul echipamentelor și serviciilor este in continuă scadere, datorita progreselor tehnologicе.

Aplicațiile mobile Android se bazează pentru eficienta și utilitatea pe interfete compuse din ferestre de dialog, controale vizuale variate, grafica 2D și alte elemente multimedia. Platforma Android permite programatorilor sa utilizeze doua metode de proiectare/definire a interfetelor utilizator: procedural prin utilizarea de instructiuni din cod sau declarativ prin definirea de fisiere descriptive XML.

Aplicațiile pentru Android se realizează folosind limbajul de programare Java. Asa că vom instala mediul de programare Eclipsе. Deoarece Linux vine cu o versiune de OpenJDK, nu este nevoie să mai instalam altceva.

BIBLIOGRAFIE

"Android Serial Port", http://www.progsrp.moonfruit.com/#/android-serial/4548697508.

"Android G1 Serial to USB Cable", http://www.instructables.com/id/Android-G1-Serial-Cable/.

"Android to Microcontroller via Bluetooth", 2011, Tutorial:

http://www.ryandebenham.com/?cat=14.

"A Bright Idea: Android Open Accessories", 2011, http://android-developers.blogspot.com/2011/05/bright-idea-android-open-accessories.html.

"Amarino", 2009, http://www.amarino-toolkit.net/index.php/docs.html.

"Google I/O 2011: Android Open Accessory API and Development Kit (ADK)",

2011, http://www.youtube.com/watch?v=s7szcpXf2rE.

"Google I/O 2011: Keynote Day One ", 2011, http://www.youtube.com/watch?

feature=player_embedded&v=OxzucwjFEEs#!.

http://www.androidauthority.com/about-android-debug-bridge-adb-21510/.

"Android Open Accessory Development Kit", 2011,

http://developer.android.com/guide/topics/usb/adk.html.

"Microchip's Accessory Framework for Android(tm)", Microchip, 2011.

www.ipedia.ro/istoria-comunicațiilor-telefonul-mobil-94/

http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

http://www.abiresearch.com/press/smartphone-users-worldwide-will-download-37-apps-o

http://www.w3.org/TR/2012/WD-proximity-20121206/

http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2011/wp185_en.pdf.

http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2009/wp163_ro.pdf

https://capoupascap.files.wordpress.com/2008/05/generatia-m-de-la-monitor.pdf

http://www.ftc.gov/os/2013/02/130201mobileprivacyreport.pdf; raportul serviciilor FTC „Mobile

http://www.ftc.gov/os/2012/02/120216mobile_apps_kids.pdf; raportul de urmărire „Mobile Apps for Kids: Disclosures Still Not Making the Grade”, decembrie 2012:

http://www.ftc.gov/os/2012/12/121210mobilekidsappreport.pdf; raportul Comisariatului pentru protecția vieții private din Canada „Seizing Opportunity: Good Privacy Practices for Developing Mobile Apps”, octombrie 2012: http://www.priv.gc.ca/information/pub/gd_app_201210_e.pdf; raportul procurorului general al Departamentului de Justiție al Californiei, Kamala D. Harris, „Privacy on the go, Recommendations for the mobile ecosystem”, ianuarie 2013: http://oag.ca.gov/sites/all/files/pdfs/privacy/privacy_on_the_go.pdf

Studiul FPF referitor la aplicațiile mobile, iunie 2012: http://www.futureofprivacy.org/wpcontent/uploads/Mobile-Apps-Study-June-2012.pdf

http://www.gsma.com/publicpolicy/wpcontent/uploads/2012/03/futuresightuserperspectivesonuserprivacy.pdf

http://www.gsma.com/publicpolicy/wpcontent/uploads/2012/03/futuresightuserperspectivesonuserprivacy.pdf

http://online.wsj.com/article/SB10001424052748704694004576020083703574602.html

http://ec.europa.eu/justice/data-protection/article-29/documentation/opinionrecommendation/files/2012/wp196_ro.pdf.

ENISA, „Smartphone Secure Development Guideline”: http://www.enisa.europa.eu/activities/Resilience-andCIIP/critical-applications/smartphone-security-1/smartphone-secure-development-guidelines.

ro.wikipedia.org/wiki/Android_(sistem_de_operare)

http://www.androider.ro./…/prezentarea_inglobarea_sistemului_de_operare_

http://www.scribd.com/doc/70765152/33/Masina-virtuala-Dalvik

http://www.scribd.com/doc/70765152/33/Masina-virtuala-Dalvik

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

http://www.go4it.ro/…/top-aplicații-android-2011-cele-mai-folosite-si-apre

www.ipedia.ro/istoria-comunicațiilor-telefonul-mobil-94/

http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

Aceasta este o estimare globală pentru 2012 furnizată de ABI Research la următoarea adresă: http://www.abiresearch.com/press/smartphone-users-worldwide-will-download-37-apps-o

Un senzor care poate detecta prezența unui obiect fizic în lipsa contactului fizic. A se vedea: http://www.w3.org/TR/2012/WD-proximity-20121206/

A se vedea Avizul nr. 13/2011 al GL29 privind serviciile de geolocalizare pe dispozitivele mobile inteligente (mai 2011): http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2011/wp185_en.pdf

Avizul nr. 5/2009 al GL29 privind socializarea în rețea online (iunie 2009): http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2009/wp163_ro.pdf

https://capoupascap.files.wordpress.com/2008/05/generatia-m-de-la-monitor.pdf

Raportul serviciilor FTC „Mobile Privacy Disclosures, Building Trust Through Transparency”, februarie 2013: http://www.ftc.gov/os/2013/02/130201mobileprivacyreport.pdf; raportul serviciilor FTC „Mobile Apps for Kids: Current Privacy Disclosures are Disappointing”, februarie 2012: http://www.ftc.gov/os/2012/02/120216mobile_apps_kids.pdf; raportul de urmărire „Mobile Apps for Kids: Disclosures Still Not Making the Grade”, decembrie 2012: http://www.ftc.gov/os/2012/12/121210mobilekidsappreport.pdf; raportul Comisariatului pentru protecția vieții private din Canada „Seizing Opportunity: Good Privacy Practices for Developing Mobile Apps”, octombrie 2012: http://www.priv.gc.ca/information/pub/gd_app_201210_e.pdf; http://oag.ca.gov/sites/all/files/pdfs/privacy/privacy_on_the_go.pdf

Studiul FPF referitor la aplicațiile mobile, iunie 2012: http://www.futureofprivacy.org/wpcontent/uploads/Mobile-Apps-Study-June-2012.pdf

Wall Street Journal, „Your Apps Are Watching You”: http://online.wsj.com/article/SB10001424052748704694004576020083703574602.html

Avizul nr. 05/2012 al GL29 privind „cloud computing” (iulie 2012): http://ec.europa.eu/justice/data-protection/article-29/documentation/opinionrecommendation/files/2012/wp196_ro.pdf.

ENISA, „Smartphone Secure Development Guideline”: http://www.enisa.europa.eu/activities/Resilience-andCIIP/critical-applications/smartphone-security-1/smartphone-secure-development-guidelines.

ro.wikipedia.org/wiki/Android_(sistem_de_operare)

http://www.androider.ro./…/prezentarea_inglobarea_sistemului_de_operare_

http://www.scribd.com/doc/70765152/33/Masina-virtuala-Dalvik

http://www.go4it.ro/…/top-aplicații-android-2011-cele-mai-folosite-si-apre

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

ro.wikipedia.org/wiki/Android_(sistem_de_operare)

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

BIBLIOGRAFIE

"Android Serial Port", http://www.progsrp.moonfruit.com/#/android-serial/4548697508.

"Android G1 Serial to USB Cable", http://www.instructables.com/id/Android-G1-Serial-Cable/.

"Android to Microcontroller via Bluetooth", 2011, Tutorial:

http://www.ryandebenham.com/?cat=14.

"A Bright Idea: Android Open Accessories", 2011, http://android-developers.blogspot.com/2011/05/bright-idea-android-open-accessories.html.

"Amarino", 2009, http://www.amarino-toolkit.net/index.php/docs.html.

"Google I/O 2011: Android Open Accessory API and Development Kit (ADK)",

2011, http://www.youtube.com/watch?v=s7szcpXf2rE.

"Google I/O 2011: Keynote Day One ", 2011, http://www.youtube.com/watch?

feature=player_embedded&v=OxzucwjFEEs#!.

http://www.androidauthority.com/about-android-debug-bridge-adb-21510/.

"Android Open Accessory Development Kit", 2011,

http://developer.android.com/guide/topics/usb/adk.html.

"Microchip's Accessory Framework for Android(tm)", Microchip, 2011.

www.ipedia.ro/istoria-comunicațiilor-telefonul-mobil-94/

http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

http://www.abiresearch.com/press/smartphone-users-worldwide-will-download-37-apps-o

http://www.w3.org/TR/2012/WD-proximity-20121206/

http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2011/wp185_en.pdf.

http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2009/wp163_ro.pdf

https://capoupascap.files.wordpress.com/2008/05/generatia-m-de-la-monitor.pdf

http://www.ftc.gov/os/2013/02/130201mobileprivacyreport.pdf; raportul serviciilor FTC „Mobile

http://www.ftc.gov/os/2012/02/120216mobile_apps_kids.pdf; raportul de urmărire „Mobile Apps for Kids: Disclosures Still Not Making the Grade”, decembrie 2012:

http://www.ftc.gov/os/2012/12/121210mobilekidsappreport.pdf; raportul Comisariatului pentru protecția vieții private din Canada „Seizing Opportunity: Good Privacy Practices for Developing Mobile Apps”, octombrie 2012: http://www.priv.gc.ca/information/pub/gd_app_201210_e.pdf; raportul procurorului general al Departamentului de Justiție al Californiei, Kamala D. Harris, „Privacy on the go, Recommendations for the mobile ecosystem”, ianuarie 2013: http://oag.ca.gov/sites/all/files/pdfs/privacy/privacy_on_the_go.pdf

Studiul FPF referitor la aplicațiile mobile, iunie 2012: http://www.futureofprivacy.org/wpcontent/uploads/Mobile-Apps-Study-June-2012.pdf

http://www.gsma.com/publicpolicy/wpcontent/uploads/2012/03/futuresightuserperspectivesonuserprivacy.pdf

http://www.gsma.com/publicpolicy/wpcontent/uploads/2012/03/futuresightuserperspectivesonuserprivacy.pdf

http://online.wsj.com/article/SB10001424052748704694004576020083703574602.html

http://ec.europa.eu/justice/data-protection/article-29/documentation/opinionrecommendation/files/2012/wp196_ro.pdf.

ENISA, „Smartphone Secure Development Guideline”: http://www.enisa.europa.eu/activities/Resilience-andCIIP/critical-applications/smartphone-security-1/smartphone-secure-development-guidelines.

ro.wikipedia.org/wiki/Android_(sistem_de_operare)

http://www.androider.ro./…/prezentarea_inglobarea_sistemului_de_operare_

http://www.scribd.com/doc/70765152/33/Masina-virtuala-Dalvik

http://www.scribd.com/doc/70765152/33/Masina-virtuala-Dalvik

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

http://www.go4it.ro/…/top-aplicații-android-2011-cele-mai-folosite-si-apre

www.ipedia.ro/istoria-comunicațiilor-telefonul-mobil-94/

http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

http://www.atic.org.ro/ktml2/files/uploads/Com_Nicolaescu.pdf

Aceasta este o estimare globală pentru 2012 furnizată de ABI Research la următoarea adresă: http://www.abiresearch.com/press/smartphone-users-worldwide-will-download-37-apps-o

Un senzor care poate detecta prezența unui obiect fizic în lipsa contactului fizic. A se vedea: http://www.w3.org/TR/2012/WD-proximity-20121206/

A se vedea Avizul nr. 13/2011 al GL29 privind serviciile de geolocalizare pe dispozitivele mobile inteligente (mai 2011): http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2011/wp185_en.pdf

Avizul nr. 5/2009 al GL29 privind socializarea în rețea online (iunie 2009): http://ec.europa.eu/justice/policies/privacy/docs/wpdocs/2009/wp163_ro.pdf

https://capoupascap.files.wordpress.com/2008/05/generatia-m-de-la-monitor.pdf

Raportul serviciilor FTC „Mobile Privacy Disclosures, Building Trust Through Transparency”, februarie 2013: http://www.ftc.gov/os/2013/02/130201mobileprivacyreport.pdf; raportul serviciilor FTC „Mobile Apps for Kids: Current Privacy Disclosures are Disappointing”, februarie 2012: http://www.ftc.gov/os/2012/02/120216mobile_apps_kids.pdf; raportul de urmărire „Mobile Apps for Kids: Disclosures Still Not Making the Grade”, decembrie 2012: http://www.ftc.gov/os/2012/12/121210mobilekidsappreport.pdf; raportul Comisariatului pentru protecția vieții private din Canada „Seizing Opportunity: Good Privacy Practices for Developing Mobile Apps”, octombrie 2012: http://www.priv.gc.ca/information/pub/gd_app_201210_e.pdf; http://oag.ca.gov/sites/all/files/pdfs/privacy/privacy_on_the_go.pdf

Studiul FPF referitor la aplicațiile mobile, iunie 2012: http://www.futureofprivacy.org/wpcontent/uploads/Mobile-Apps-Study-June-2012.pdf

Wall Street Journal, „Your Apps Are Watching You”: http://online.wsj.com/article/SB10001424052748704694004576020083703574602.html

Avizul nr. 05/2012 al GL29 privind „cloud computing” (iulie 2012): http://ec.europa.eu/justice/data-protection/article-29/documentation/opinionrecommendation/files/2012/wp196_ro.pdf.

ENISA, „Smartphone Secure Development Guideline”: http://www.enisa.europa.eu/activities/Resilience-andCIIP/critical-applications/smartphone-security-1/smartphone-secure-development-guidelines.

ro.wikipedia.org/wiki/Android_(sistem_de_operare)

http://www.androider.ro./…/prezentarea_inglobarea_sistemului_de_operare_

http://www.scribd.com/doc/70765152/33/Masina-virtuala-Dalvik

http://www.go4it.ro/…/top-aplicații-android-2011-cele-mai-folosite-si-apre

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

ro.wikipedia.org/wiki/Android_(sistem_de_operare)

http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activități-si-resurse-ale-unei-aplicații-android/

Similar Posts