Documentatie DAM

20
Academia de Studii Economice din București Facultatea de Cibernetică, Statistică și Informatică Economică Pr oiect Dispozitive și Aplicaii !obile  Aplicație mobilă de tip translator Profesor coordonator" Studeni" Prof# $niv# Dr# Paul Pocatilu Adăscăliei Ioan Arnăutu %udor Pavel Badea Adrian Costin Băloi Ion Costel !arius

Transcript of Documentatie DAM

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 1/20

Academia de Studii Economice din București

Facultatea de Cibernetică, Statistică și InformaticăEconomică

Proiect Dispozitive și Aplicaii !obile

 Aplicație mobilă de tip translator 

Profesor coordonator" Studeni"Prof# $niv# Dr# Paul Pocatilu Adăscăliei Ioan

Arnăutu %udorPavel

Badea Adrian CostinBăloi Ion Costel

!arius

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 2/20

CuprinsIntroducere#############################################################################################################&

Problema rezolvată#############################################################################################&

Scopul aplicaiei################################################################################################## &

Scurtă prezentare################################################################################################&

Descriere soluie#####################################################################################################'

Descriere funcionalităi aplicaie########################################################################'

Autenti(care#################################################################################################### '

 %raducere#########################################################################################################'

Evaluare și statistici aplicaie)acordare notă și vizualizare statistici*###############+

Descriere aplicaie###########################################################################################+

Eemplu de utilizare############################################################################################+

Implementare soluie pentru platforma Android#####################################################-

Concluzii#################################################################################################################-

Biblio.ra(e############################################################################################################# -Anee##################################################################################################################### -

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 3/20

Aplicaie mobilă de tip translator

Introducere

Problema rezolvatăAplica ia de tip translatorț   TranslateApp î i propune să faciliteze traducerea diverselor texteș

dintr-o limbă într-alta, utilizând dispozitivele mobile existente în momentul de fa ă,ț

dispozitive ce utilizează platforma Android(smartphone, tabletă, etc).

Scopul aplicațieiScopul dezvoltării aplica iei îl constituie autorarea persoanelor care nu cunosc anumite limbiț

să înve e!în elea"ă o anumită limbă prin traducerea pro"resivă a anumitor texte!cuvinte sau săț ț

comunice cu alte persoane folosind ca autor dic ionarul din aplica ie.ț ț

Scurtă prezentare#entru a traduce un anumit cuvânt sau text, utilizatorul aplicatiei trebuie să conectezedispozitivul Android utilizat la re eaua de $nternet, iar apoi să utilizeze aplica ia. #rimul pasț ț

necesar utilizării aplica iei îl reprezintă crearea unui cont folosind date precum username,ț

 pass%ord i adresă de email& mai apoi, este necesară conectarea cu contul creat anterior iș ș

traducerea textelor dorite. Atunci când este afi ată traducerea textului dorit, utilizatorul poateș

acorda calificative aplica iei în func ie de "radul de corectitudine al traducerii pe care îlț ț

apreciază.

Aplica ia prezentată con ine o interfa a u or accesibilă indiferent de vârsta utilizatorului iț ț ț ș ș

"radul de cunoa tere a aplica iilor informatice, precum i o interfa a prietenoasă cu utilizatorulș ț ș ț

final al aplica iei.ț

Autentificarea utilizatorilor o considerăm necesară pentru extra"erea unor date statistice privind utilizatorul aplica iei, precum calificativele acordate aplica iei(aceste date suntț ț

necesare pentru îmbunătă irea ulterioară a modului în care aplica ia traduce, cât i pentru aț ț ș

observa care sunt cele mai utilizate limbi pentru care se solicită traducerea de către unutilizator.

'tilizatorul aplica iei poate vizualiza statistici referitoare la căutările sale, precum limbileț

 pentru care a solicitat cele mai multe traduceri. e asemenea, acesta poate vizualiza i "raficșlimbile pentru care a făcut traduceri sub forma unei dia"rame circulare(apple pie*).

#entru a fi mai u or de observat de către utilizator în meniulș

aplica iilor de pe dispozitivul său Android, aplica iaț ț

TranslateApp are un icon personalizat.

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 4/20

Descriere soluție

Descriere funcționalități aplicație

Autenticare

+a deschiderea aplica iei, utilizatorul va fițintâmpinat de către prima fereastră aaplica iei, cea în care acesta are dreptul deț

a crea un cont nou(dacă nu a mai utilizat întrecut această aplica ie, acest pas esteț

obli"atoriu) sau de a se lo"a cu un contdea existent.

#entru a crea un cont nou, un utilizator trebuie să completeze date precum

• 'ser numele utilzatorului&• #ass%ord parola pe care o dore te utilizatorul pentru contul ce se va crea&ș

• mail adresa de mail a utilizatorului& aceasta trebuie să con inuă obli"atoriuț

caracterele /* i .*, în caz contrar este o adresă de mail "re ită. Aceste date vor fiș șintroduse în 0 dit1ext-uri(user1ext, pass1ext i email1ext), câte unul pentru datăș

necesară.

#entru crearea unui cont nou, este necesarătrimiterea datelor introduse către aplica ie.ț

Aceasta se realizează prin apăsarea butonului Salvează* disponibil pe ecran.

acă utilizatorul a mai folosit aplica ia înț

trecut, acesta se poate conecta cu acel cont.

2n cazul în care datele introduse de utilizator pentru conectare sunt "re ite, aplica ia va afi a oș ț ș

notificare prin care îl în tiin ează că atele introduse sunt "re ite3*, iar acesta areș ț ș

 posibilitatea de a le verifica fără a le reintroduce(pentru parolă poate vizualiza doar numărulcaracterelor, nu i caracterele).ș

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 5/20

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 6/20

Evaluare și statistici aplicațieacordare notă și vizualizare statistici!2n func ie de corectitudinea traducerii pe care o apreciază utilizatorul, acesta poate notaț

aplica ia cu o notă prin intermediul <atin"=ar-ului(ratin"=ar) situat în partea inferioară aț

ecranului activită ii activit;6traducerea.ț

'tilizatorul poate vizualiza statistici referitoare la traducerile sale, precum limbile între carese realizează cele mai multe traduceri i numărul utilizării acestora. Aceste date pot fiș

vizualizate sub forma unei dia"rame circulare desenată în 7anvas cu diferite culori.

Descriere aplicațieescrierea aplica iei este prezentată în cadrul activită ii activit;6despre. 2n cadrul acesteiț ț

activită i sunt disponibile > obiecte de tip 1ext4ie% a ezate pe un la;out de tipț ș

<elative+a;out. #entru dispozitive cu un ecran mic, activitatea con ine i un Scroll4ie% prinț ș

care utilizatorul poate vedea întrea"a informa ie disponibilă.ț

2n cadrul acestei activită i este prezentată o scurtă descriere despreț func ionalită ile aplica ieiț ț ț

care sunt disponibile utilizatorului, dar i autorii aplica iei, împreună cu profesorulș țîndrumător.

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 7/20

E"emplu de utilizarePentru a eempli(ca utilizarea acestei aplicaii, presupunem că un student esteutilizator nou al acestei aplicaii și dorește să o utilizeze /n scop educaional#

Primul pas care trebuie urmat pentru a functiona corect aplicaia /l reprezintăconectarea dispozitivului mobil folosit la reeaua de Internet deoarece aplicaiautilizează API0ul creat de 1oo.le și trebuie să acceseze reeaua#

2 dată pornită aplicaia, /ntruc3t este un utilizator nou, trebuie să creeze cont

pentru a se autenti(ca# Sunt necesare date referitoare la nume de utilizator,parola contului, dar și adresa de email, după care se revine /n fereastra iniialăpentru lo.area propriu0zisă#

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 8/20

A4uns /n ecranul principal alaplicaiei, studentul poate ale.e /ntre& activităi pe care le poatedesfășura"

• Efectuarea unei traduceri noi• 5izualizare descriere aplicai• 5izualizare statistici cont

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 9/20

6n cazul /n care ale.e efectuarea unei traduceri, acesta trebuie să alea.ă limbadin care se va face traducerea și limba /n care se va traduce tetul introdus mai

 4os# După apăsarea butonului 7%ranslate8 se va a(șa traducerea /ntr0o altăfereastră9 mai apoi, studentul are posibilitatea de a evalua traducerea a(șată#

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 10/20

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 11/20

Dacă ale.e să vizualizeze Statistici, studentul poate observa date despre modulcum a utilizat el aplicaia, limbile folosite și ponderea acestora#

Implementare soluție pentru platforma Android

Autenticare$tilizatorul trebuie să se lo.:eze de (ecare dată cand intră /n aplicaie, iar dacănu are cont trebuie să /și facă unul# Activitatea care este lansată prima este8;o.inActivit<8 care are = edittet0uri pentru a introduce user0ul și parola, și =butoane,8;o.in8 si 8Cont >ou8, care au atașate c3te un listener#6n momentul /ncare dăm clic? pe 8;o.in8 se veri(ca dacă user0ul și parola introduse suntasociate unui cont de4a eistent# Dacă da, atunci se trece in 8!ainScreen8# Dacănu, atunci se veri(ca daca eistă un cont creat# Se a(șeaza un mesa4 pe ecran

dacă nu eista un cont creat sau dacă datele sunt .reșite# ,

C3nd se apasă pe butonul 8;o.in8

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 12/20

C3nd dăm clic? pe 8Cont >ou8 se va desc:ide o nouă activitate, și anume8CreazăCont8#

6n activitatea 8CreazaCont8 sunt & edittet0uri pentru user,parolă și email și unbuton 8Salvează8 care are atașat un listener# Prima dată se veri(că dacă adresade email introdusă conine 8@8 și 8#8)se veri(că dacă este o adresă validă*# Dacă

nu este validă se a(șează un mesa4 corespunzător pe ecran#

Clic? pe salvează

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 13/20

 

Functia 8is>eAccount8 veri(că dacă este un cont nou

Functia 8save$serCredential8 salveaza datele introduse /ntr0un (șier de

proprietăi

Functia 8isEmail2?8 veri(că dacă email0ul introdus este valid

 

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 14/20

 #$ainScreen# este activitatea principală și este alcătuita din & fra.mente#Fiecare din cele & fra.mente desc:ide c3te o nouă activitate# Activităile sunt"8De%radus8,8Despre8 și 8Statistici8#

#DeTradus# conine = obiecte de tip spinner, un edittet și un buton

8%ranslate8#2biectele de tip spinner sunt pentru a selecta limba din care se vaface traducerea și limba /n care se va face traducerea# Am făcut un adaptorpentru aceste spinnere ca să arate pentru (ecare limbă din listă și stea.ul

aferent ării # 6n edittet se scrie tetul ce se vrea a ( tradus#

;a evenimentul de onClic? pe buton au loc = evenimente"

0se pornește as<n?tas?0ul 8%ranslator8 care in doInBac?.round instaniază un

obiect de tipul 8%ranslate8 , /nonPreEecute pornește un pro.ressdialo.

, iar /n onPostEecute oprește pro.ressdialo.0ul și apelează funcia8send%ranslated%et8

Funcia 8send%ranslated%et8

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 15/20

0al doilea eveniment este scrierea in baza de date# 6n baza de date sunt trecutetoate combinaiile de limbă folosite și de c3te ori au apărut (ecare#

6n variabila 8lan.ua.e8 se scrie combinaia de limbă sub următoarea formă"primele ' litere sunt primele ' litere din limba iniială,apoi o să.eata 808,iarurmătoarele ' litere sunt primele ' litere din limba (nală#5ariabila numberusedarată de c3te ori a fost folosită combinaia de limbi# Dacă este atunci vomadau.a o nouă linie /n baza de date,altfel vom face update#

6n bara de meniu avem opiunea de a putea mer.e /n activitate8Countr<FromS2>8

 și #

#Traducerea## Aici este doar un tetvie pentru a a(șa traducerea tetuluiintrodus /n edittetul din activitatea 8De%radus8 și un ratin.bar pentru a nota

calitatea traducerii#

#Despre## Sunt & tetvie0uri /n care se a(șează informaii despre aplicaie#Cele & tetvie0uri sunt incluse intr0un elative;a<out care la r3ndul lui esteinclus /ntr0un Scroll5ie#

#Statisitici## Activitatea implementează 8PieC:art5ie#Callbac?8 si interfaa8IDataBase8# Am suprascris metoda onDraFinis:ed pentru a crea un pie c:art#

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 16/20

 Datele necesare pentru a crea pie c:art0ul sunt preuate din baza de date /ntr0olistă și mai apoi /n = vectori de strin. respenctiv de int sunt preluate combinaiilede limbă și de c3te ori apar (ecare# Dacă in baza de date sunt mai mult de + linii,atunci pentru pie c:art se vor lua /n considerare doar primele + linii ordonatedescrescător după numarul de utilizări#

#Countr%&rom'S()# # Această activitate a(șează /ntr0un listvie date despreări, cum ar ( numele ării,capitala,limbaG0ile vorbite,re.iunea și subre.iunea#Datele sunt citite dintr0un (șier local S2>#

#*istCustomAdapter# este un adaptor pentru lista care se a(șează /n8Countr<FromS2>8# Aici sunt + tetvie0uri care sunt iniializate cu date preluatedintr0un obiect de tip 8Countries8, obiect preluat dintr0o listă de 8Countries8#

#SpinnerCustomAdapter# este un adaptor pentru cele = spinnere dinactivitatea 8De%radus8# Aici sunt folosite un ima.evie, utilizat pentru a a(șastea.ul, și un tetvie ce va a(șa numele ării#

>umele ărilor si id0urile stea.urilor sunt păstrate /n = vectori, unul de strin.0uri și

respectiv unul de int#

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 17/20

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 18/20

#PieC,art-ie.# clasă ce etinde clasa 85ie8 este folosită pentru a desena pie

c:art0ul din activitatea 8Statistici8#

#Translate# conine o sin.ură funcie care face le.ătura cu API0ul 1oo.le șiintoarce un tet care este traducerea tetului introdus in edittet0ul din8De%radus8# ;imbile sunt preluate din cele = spinnere din 8De%radus8#

Se compune $;0ul pentru API0ul 1oo.le

Se face le.ătura cu API0ul 1oo.le

Se preia răspunsul de la API

ăspunsul primit se introduce /ntr0un strin.

Acest strin. este formatat /ntr0un S2>, din care se preia tetul tradus

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 19/20

 

#/tils# este o clasă a4utătoare# Aici este o funcie care iniializează un arra<listde 8Countr<>ameAndIds8# 2 funie care intoarce un vector de strin.0uri cecontine numele ărilor, o funcie care /ntoarce un vector de int ce conine id0urilestea.urilor# Datele pentru ambii vectori sunt preluate din lista pe care o /ntoarce

8initializeCountries8# !ai conine o funcie care /ncarcă S2>0ul și o funcie careprelucrează tetul preluat din S2>#

Aici este un eemplu de cum se preiau re.iunea și numele pentru o ară

6n aplicaie am mai folosit ' P220uri" 8Countr<>ameAndIds8, 8Countries8,8DataColorSet8, 8Elements2fDB8#

#Countr%)ameAndIds# este folosită pentru a crea o le.ătură /ntre id0urilestea.urilor și numele ării respective și pentru un acces mai ușor /n adaptor#

7/25/2019 Documentatie DAM

http://slidepdf.com/reader/full/documentatie-dam 20/20

#Countries# este folosită pentru a păstra datele citite din S2>#

#DataColorSet# este folosită pentru a ușura crearea pie c:art0ului# Aici suntpăstrate valorile după care este creat pie0c:art0ul,codurile de culoare și strin.0uri0le care se vor a(șa pe (ecare felie din pie c:art#

#Elements(fD+# este o clasă ce are aceleași atribute precum baza de date# Efolosită pentru a ușura lucrul cu baza de date#

Concluzii

+iblio0rae

Ane"e