APLICAȚIE GHID INFORMATIV PENTRU FILME: MOVIE GUIDE [302510]

universitatea politehnica timișoara

facultatea de inginerie hunedoara

DEPARTAMENTUL DE INGINERIE ELECTRICA ȘI INFORMATICA INDUSTRIALĂ

INFORMATICĂ iNDUSTRIALĂ

LUCRARE DE DIPLOMĂ

Coordonator Stiintific: Absolvent: [anonimizat].dr. [anonimizat]

2018

[anonimizat]: MOVIE GUIDE

Coordonator Stiintific: Absolvent: [anonimizat].dr. [anonimizat]

2018

INTRODUCERE

Dezvoltarea recentă și neîntreruptă a [anonimizat] a avut ca efect răspândirea acestei tehnologii în toate mediile : afaceri, sănătate, educație, divertisment.

Tehnologiile mobile ocupa un loc important in societatea actuala datorita avantajele pe care le ofera:

flexibilitate, [anonimizat];

costuri de access din ce in ce mai mici la informatie;

dezvoltarea aplicatiilor pentru o gama larga de domenii: afaceri, sanatate, educatie, divertisment.

Prin prezentul studiu de caz : „[anonimizat]„ se demonstrează preluarea în timp real a datelor despre filme de pe baza de date online www.themoviedb.com.

Pentru dezvoltarea aplicației s-a utilizat Android Studio 3.1.1, [anonimizat] a fost realizată în limbajul Java.

[anonimizat]: [anonimizat].

Capitolul 1. Informații despre elementele unei aplicații Android.

Capitolul 2. Uneltele necesare dezvoltarii aplicațiilor care rulează pe Android.

Capitolul 3. Modul de programare al aplicațiilor pe Android.

Capitolul 4. Prezentarea structuri aplicației Ghid Informativ pentru Filme.

Capitolul 5. Implementarea aplicației Ghid Informativ pentru Filme

Capitolul 6. Concluzii.

Capitolul 7. Bibliografie.

CAPITOLUL I

GENERALITĂȚI

Istoric Android

Android este singurul sistem de operare mobil creat de Google. Iar mai târziu de consorțiul comercial Open Handset Alliance și reprezintă o platformă software pentru telefoane mobile și dispozitive bazate pe nucleu Linux. Acesta permite dezvoltatorilor să scrie cod în limbaj de programare Java. Aplicațiile pot fi scrise și în C, C++ sau alte limbaje de programare dar acest mod de dezvoltare nu este susținut oficial de Google. Platforma Android a fost lansată la 5 noiembrie 2007 prin anunțarea fondării unui consorțiu de 48 [anonimizat] (OHA), [anonimizat], Intel, HTC, Qualcom, T-Mobile, Sprint Nextel și Nvidia. La 9 decembrie 2008, 14 [anonimizat], [anonimizat]. Din data de 21 octombrie 2008, Android a fost disponibil ca Open Source astfel că Google a deschis întregul cod sursă sub licența Apache. Sub această licență producătorii sunt liberi să adauge extensii proprietare, fără a le face disponibile comunității open source, în timp ce contribuțiile Google la această platformă rămân open source. Platforma Android a fost construită pentru a permite dezvoltatorilor să creeze aplicații mobile care să utilizeze toate resursele pe care un telefon le are de oferit. O aplicație poate apela oricare dintre funcționalitățile de bază ale telefonului, cum ar fi efectuarea de apeluri, trimiterea de mesaje text sau folosirea aparatului de fotografiat. Android-ul nu face diferența între aplicațiile de bază ale telefonului și cele create de dezvoltatori. A fost construit pentru a fi cu adevărat deschis. Fiind o platformă open source, aceasta va evolua continuu prin încorporarea tehnologiilor de ultimă generație. Ele pot fi construite să aibă acces egal la capacitățile telefonului pentru a oferi utilizatorilor un spectru larg de aplicații și servicii.

Tehnologiile care se folosesc pentru dezvoltarea aplicațiilor Android

Dezvoltarea aplicațiilor pentru platforma Android se poate efectua în câteva moduri diferite folosind limbajele: C/C++, Java/XML sau Koltin. Limbajele C și C++ sunt limbaje sursă ale sistemului de operare Android, așadar, aplicațiile realizate cu ajutorul acestor limbaje se numesc native. Totuși, cele mai multe tipuri de aplicații Android se dezvoltă folosind combinația de limbaje Java și XML. Limbajul XML se folosește pentru crearea layout-ului, respectiv pentru aranjarea și crearea componentelor vizuale, în timp ce limbajul Java se folosește pentru definirea logicii de programare de bază a aplicației.Java este un limbaj care are nevoie pentru execuția sa de o mașină virtuală, iar în Android pentru acest lucru se folosește mașina virtuală Android Runtime.

Domeniul necesar pentru dezvoltarea aplicațiilor Android

Java este cel mai popular limbaj pentru crearea aplicațiilor sistemului de operare Android. Astfel, pentru crearea cu succes a aplicațiilor Android este nevoie de un set de tehnologii ce permit scrierea codului sursă Java. Premisa pentru scrierea codului de programare Java este existența lui Java Development Kit (JDK), instalat pe calculatorul folosit pentru dezvoltare.

Totuși, pe lângă cererea de bază, crearea aplicațiilor pentru platforma Android necesită și folosirea diferitor altor instrumente, precum linkeri, depanatoare și diferite biblioteci cu cod finit. Toate aceste componente la un loc se numesc Android Software Development Kit (SDK). Descărcarea și instalarea unei aplicații ne permite să obținem toate componentele menționate pentru dezvoltarea aplicațiilor Android.

Fișierul APK?

Limbajul de programare Java este un mediu de execuție, care pe lângă fișierele cu open-source (.java) și fișierele cu bite-code (.class), cunosc și un tip special pentru arhivare. Acestea sunt fișierele cu extensia .jar (Java Archive), dar se folosesc pentru gruparea mai multor fișiere java cu open-source, metadate, precum și diferite resurse. Mediul de execuție Android nu recunoaște fișierele JAR, dar deține propriul format pentru gruparea tuturor fișierelor unei aplicații. Este vorba de fișierele Android Application Package (APK). APK este abrevierea pentru noțiunea Android Application Package. De fapt, APK este fișierul care conține toate fișierele necesare pentru distribuirea și instalarea aplicațiilor Android. Acesta este fișierul ce reprezintă arhiva, aproape identică cu arhivele JAR și ZIP. Acest fișier este creat la construirea aplicației. Pentru dispozitivele fizice și virtuale este suficient doar acest fișier pentru a fi în posibilitatea de a porni aplicația Android creată.

Arhitectura sistemului Android

Sistemul Android dispune de o arhitectură alcatuită din 5 niveluri ce comunică între ele:

Nucleu Linux (Linux Kernel)

Librării de bază

Android RUNTIME

Aplicații Framework

Aplicații

Arhitectura sistemului Android

CAPITOLUL II

TEHNOLOGII INFORMATICE ȘI UNELTELE DE DEZVOLTARE ANDROID

2.1. Tehnologii Folosite

Pentru a dezvolta aplicații pentru Android este nevoie de un IDE, Android Studio (care vine la pachet cu SDK-ul pentru Android), și de JDK (Java Development Kit)

Fig. 2.1 Pagină descărcare Android Studio

Fig. 2.2 Pagină descărcare Java Development Kit

Dupa instalarea utilităților de mai sus se actualizează SDK managerul cu pachetele API necesare.

Fig. 2.3 Android SDK Manager

2.1.1 Java

Java este un limbaj de programare orientat-obiect, puternic tipizat. Cele mai multe aplicații sunt scrise în Java.

Limbajul Java împrumută o mare parte din sintaxa C și C++. Un program Java compilat, scris corect, poate fi rulat fără modificari pe orice platformă care are instalată o mașina virtuală Java (JVM – Java Virtuale Machine).

Medii de dezvoltare – Un IDE (integrated development environment) este un mediu de lucru care permite dezvoltarea de aplicatii care utilizeaza anumite limbaje de programare (cele suportate de IDE). Pentru Java sunt folosoite urmatoarele:

JCreator

Android Studio

Eclipse

NetBeans

JBuilder

JDeveloper

2.1.2 Android API

Există mai multe versiuni de Android API întrucât acesta se actualizează la fiecare versiune nouă de Android. Astfel, Android API 1 corespunde primei versiuni de Android, însă prima versiune de API facută publică este Android API 3 ce corespunde versiunii Android 1.5. Aplicațiile destinate platformei Android sunt create cu ajutorul API-ului Android. API-ul Android este scris în limbajul de programare Java de către dezvoltatorii platformei Android, acesta fiind public și gratuit, având de asemenea și o pagină web dedicată documentației API-ului plus câteva „unelte” suplimentare (tutoriale, „best practices” în development precum și design, aplicații de test, etc.) pentru a ajuta dezvoltatorii de astfel de aplicații.

2.1.3 Android Studio

Odată cu apariția sa, Android Studio, a înlocuit ADT-ul (Android Development Tools) mediului de dezvoltare Eclipse, adăugând în același timp o interfață mult mai prietenoasă pentru dezvoltatori, precum și unelte mai ușor accesibile și mai ușor de folosit. Pe lângă acestea, a fost adăugat și un „build automation system” numit Gradle cu ajutorul căruia se pot configura buildurile facute pentru aplicațiile Android mult mai simplu și mai intuitiv. De asemenea cu Gradle se pot descărca biblioteci specifice Android-ului printr-o simplă linie de cod și un „click” pe butonul de „Sync Project with Gradle Files”.

Din moment ce acum ne aflăm la al doilea mediu de dezvoltare pentru platforma Android și au intervenit multe schimbări odată cu trecerea de la Eclipse la Android Studio, se poate preciza faptul că acum trebuie respectată o altă structură de directoare și fișiere față de cea din primul mediu de dezvoltare:

build.gradle(project) este fișierul care reprezintă configurațiile care se aplică la toate modulele aplicației.

Numele-modulului/

build/ este directorul care conține „the build outputs”

libs/ este directorul care conține Bibliotecile private

build.gradle(module) este fișierul care reprezintă configurațiile pentru build-ul modulului

app/ fișierele sursă principale:

Android Manifest.xml „descrie natura aplicației și toate componentele sale”

java/ conține toate fișierele sursă Java

res/ conține toate resursele care sunt folosite pentru crearea aplicației cum ar fi layout-uri sau „UI strings”

2.2. Bibliotecii folosite

2.2.1 Biblioteca v7-palette

Pentru a folosi această bibliotecă într-un proiect Android va trebui editat fișierul build.gradle. Aceasta bibliotecă vă permite să extrageți culori proeminente dintr-o imagine.

2.2.2 Biblioteca v7- recyclerview

Clasa RecyclerView oferă suport pentru widgetul RecyclerView. Pentru a folosi această bibliotecă într-un proiect Android va trebui editat fișierul build.gradle.

2.2.3 Biblioteca RxJava și Biblioteca

Biblioteca RxJava este folosită pentru compunerea programelor asincrone și a evenimentelor utilizând secvențe observabile. Biblioteca RxAndroid adaugă clasele minime la RxJava care fac scrierea componentelor reactive în aplicațiile Android ușor și fără probleme. Pentru a folosi aceaste bibliotecii într-un proiect Android va trebui editat fișierul build.gradle.

2.2.4 Biblioteca OKHttp / OKHttp Interceptor / Glide

Biblioteca OKHttp este utilizata ca un client HTTP pentru aplicații Android și Java. OKHttp Interceptor înregistrează datele de solicitare și de răspuns HTTP. Glide este un management rapid și eficient al mediilor de tip open source și un cadru de încărcare a imaginii pentru Android, care împachetează decodificarea memoria și cache-ul de discuri și punerea în comun a resurselor într-o interfață simplă și ușor de utilizat. Pentru a folosi aceaste bibliotecii într-un proiect Android va trebui editat fișierul build.gradle.

CAPITLUL III

DEZVOLTAREA IN ANDROID

3.1 Creearea unui proiect in Android Studio

1.În fereastra de început, se alege Start a new Android Studio Project (fig. 3.1)

Fig. 3.1 Meniu de întâmpinare

2. Se completează câmpurile necesare și se apasa Next.

Fig. 3.2 Meniu configurare

Aplication Name – reprezintă numele aplicației care apare pentru utilizator.

Company Domain- adaugă un domeniu la denumirea pachetului.

Package Name- reprezintă denumirea completă a proiectului(se folosesc aceleași convenții ca și la pachetele Java). Denumirea pachetului trebuie sa fie unică, fiecare clasă din sistemul Android identificandu-se după această denumire.

Project Location- locația unde se stochează proiectul.

3. Se selectează forma proiectului după cum se vede în fig. 3.3 și se selectează un SDK minim.

Fig. 3.3 Meniu selectare API

SDK-ul minim este cea mai veche versiune de Android pe care o acceptă aplicația, indicat de nivelul API, în cazul acesta 15. Pentru a rula pe cât mai multe dispozitive, ar trebui setat acest lucru la cea mai mică versiune disponibilă care permite aplicației să furnizeze un set de caracteristici de bază și cât mai actual.

4. Se alege un sablon

Fig. 3.4 Meniu selectare sablon

5. Se completează câmpurile ca în figura de mai jos și se alege Finish.

Fig. 3.5 Meniu final

6. Dupa parcurgerea pașilor de mai sus structura proiectului ar arăta ca în figura de mai jos:

3.2 Rularea unui proiect Android

Rularea pe emulator

Pentru a rula aplicația pe emulator , mai întai trebuie creeat un Android Virtual Device (AVD) care conține configurațiile care permit simularea unui dispozitiv real:

Click pe Tools>Android>AVD Manager.

Click Create Virtual Device și se alege un model cât mai apropiat de dimensiunile dispozitivului real dar cu rezoluție suportabila pentru PC

Se selectează un sistem de operare virtual pentru dispozitivul virtual.

După ce se alege un nume pentru dispozitivul virtual se apasă Finish și lista AVD Manager arata ca în figura urmatoare:

Se apasă Run din Android Studio.

Rularea pe un dispozitiv real.

Implică conectarea dispozitivului real la PC printr-un cablu usb.

Bifarea opțiunii Settings>Developer Options>USB Debugging din dispozitivul Android (pentru modele mai noi se apasă de 7 ori Settings>About Phone> Build Number ca să apară Developer O;ptions).

Se apasă Run.

Se alege dispozitivul conectat evidențiat cu albastru ca în figura:

3.3 Creearea unei interfete

Interfața grafică pentru o aplicație Android este construită folosind o ierarhie a obiectelor View și ViewGroup. Obiectele View sunt de obicei Interface(UI), cum ar fi butoane sau câmpuri de text. Obiectele ViewGroup sunt containere invizibile care definesc modul în care obiectele View sunt dispuse, cum ar fi într-o grilă sau o listă verticală.

Pentru a creea layout-ul, se pot instanția obiecte View în cod, dar cel mai simplu și cel mai eficient mod de a defini layoutul este cu un fișier XML. XML oferă o structură care poate fi citită ușor, similar cu HTML. Denumirea unui element XML pentru obiectul View este corelată cu clasa Android pe care o reprezintă. Deci, un element <TextView> creează un widget TextView în UI-ul, și un element <LinearLayout> creează un grup de vizualizare LinearLayout.

Un Layout definește structura vizuală pentru o interfață de utilizator, și se poate face in două moduri:

declarare elementele UI în XML. Android oferă un vocabular XML simplu, care corespunde claselor și subclaselor View, cum ar fi cele pentru widget-uri și machete.

instanțiere elemente de layout în timpul rulării. Aplicația poate crea obiecte View și ViewGroup (și manipula proprietățile lor) din cod.

Creearea interfeței cu XML

Folosind vocabularul XML Android, se proiectează rapid machete UI și elementele de UI conținute în machete, similar cu crearea paginilor web în HTML – cu o serie de elemente imbricate.Fiecare fișier layout trebuie să conțină exact un element rădăcină, care trebuie să fie un obiect View sau ViewGroup. După ce s-a definit elementul rădăcină, se pot adăuga obiecte layout suplimentare sau widget-uri ca elemente pentru a construi treptat o ierarhie View, care definește layout-ul. De exemplu, un layout XML care utilizează un LinearLayout vertical pentru un TextView și un RadioButton produce interfața:

La compilarea aplicației, fiecare fișier layout XML este compilat într-o resursă View. Resursa layout se încarcă în aplicație, prin apelarea în corpul metodei Activity.onCreate () a setContentView (), trimițându-i ca parametru fișierul layout dorit ca interfață uitilizator .

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_my_app);

Metoda onCreate () este apelată automat de către sistemul Android atunci cand aplicația este lansată.

Fiecare obiect View și ViewGroup suportă propria lor varietate de atribute XML. Anumite atribute sunt specifice unui obiect View (de exemplu, TextView suportă atributul textsize), dar aceste atribute sunt, de asemenea, moștenite de orice obiecte View care pot extinde această clasă.

Unele dintre acestea sunt comune tuturor obiectelor View, deoarece acestea sunt moștenite de la clasa rădacină View (cum ar fi atributul id).

Orice obiect View poate avea un ID asociat cu acesta, pentru a identifica în mod unic View în cadrul interfetei utilizator.

Cand aplicația este compilată, acest ID este referit ca un întreg, dar ID-ul este de obicei atribuit în fișierul layout. XML ca un șir de caractere(string), în atributul id.

Acesta este un atribut XML comun tuturor obiectelor View(definite de clasa View). Sintaxa pentru un ID, în interiorul unei etichete XML este:

android:id="@+id/button.

Simbolul @ la începutul șirului indică faptul că parserul XML ar trebui să extindă restul șirului de identitate și să-l identifice ca resursă ID.

Simbolul + înseamnă că acesta este un nume de resursă nouă, care trebuie să fie creat și adăugat la resursele noastre (în fișierul R.java).

Pentru a creea interfețe și a le referi din aplicație, se poate proceda astfel:

Se definește un view în fișierul layout XML și i se atribuie un ID.

<Buttonandroid:id="@+id/button"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Button" />

Apoi se crează o instanță a obiectului Button și se incarcă din layout (de obicei, în metoda onCreate ()):

Button myButton = (Button) findViewById(R.id.my_button);

3.4 Creearea unei activitati

O activitate este o componentă de aplicație care oferă un ecran cu care utilizatorul poate interacționa în scopul de a face ceva, cum ar fi apelarea la telefon, să facă o fotografie, trimite un e-mail, sau pentru a vizualiza o hartă.

Pentru a creea o activitate, trebuie creeată o subclasă a clasei Activity. În subclasă, trebuie implementate metodele callback pe care sistemul le apeleaza atunci când activitatea își schimbă starea, cum ar fi atunci când se creează activitatea, se oprește, a fost reluată, sau distrusă.

Pentru ca activitatea să fie accesibilă sistemului aceasta trebuie declarată în fisierul Manifest.xml . Pentru a declara activitatea, trebuie deschis fișierul manifest și adăugat un element <activity> ca subelement al elementului <application >. De exemplu:

Există mai multe alte atribute care se pot include în acest element, pentru a defini proprietăți, cum ar fi eticheta label pentru activitate, o pictogramă pentru activitate, sau o temă pentru stilul interfeței utilizator. Atributul android:name este obligatoriu pentru că specifică numele clasei în care este activitatea. După publicarea aplicației, android:name trebuie să ramână neschimbat .

Un element <activity> poate folosi diverse filtre folosind elementul <intent-filter> pentru a specifica modul în care alte componente îl pot activa.

Atunci când se creează o nouă aplicație, folosind instrumentele Android SDK, activitatea șablon creeată automat include un filtru de intenție, care declară că activitatea răspunde la acțiunea "MAIN" și ar trebui să fie plasată în categoria "Launcher". Filtrul intenție arată astfel:

Elementul <action> specifică faptul că aceasta este principalul punct de intrare. Elementul <category> specifică faptul că această activitate ar trebui să fie inclusă în categoria “LAUNCHER” a sistemului (pentru a permite utilizatorilor să lanseze această aplicatie).

Atunci când o activitate trece în și din diferitele stări, aceasta este notificată prin diverse metode callback. Toate metodele callback sunt metode care se pot suprascrie pentru a face munca corespunzătoare, atunci când starea activității se schimbă.

În figura de mai jos sunt prezentate căile pe care activitatea o poate lua între diferitele stări:

onCreate ()- apelată atunci când activitatea este creeată pentru prima dată.

onRestart ()-apelată după ce activitatea a fost oprită, chiar înainte ca aceasta să fie pornită din nou; urmată întotdeauna de onStart ().

onStart ()- apelată chiar înainte ca activitatea sa devina vizibilă pentru utilizator.

onResume ()-apelată chiar înainte ca activitatea să înceapă interacțiunea cu utilizatorul.

onPause ()-apelată atunci când sistemul este pe cale să înceapă reluarea la o altă activitate.

onStop ()-apelată atunci când activitatea nu mai este vizibilă pentru utilizator.

onDestroy ()- apelată înainte ca activitatea să fie distrusă.

3.5 Intent

Intent sunt mesaje asincrone care permit aplicațiilor să solicite funcționalități de la alte componente Android. Printre componentele ce pot fi apelate prin intermediul obiectelor de tip Intent se numără servicii, activități etc. Cu ajutorul obiectelor de tip Intent, este posibilă comunicarea în timpul rulării cu diverse componente aflate fie în interiorul aplicației, fie localizate în alte aplicații. O activitate poate apela direct o componentă (Intent explicit) sau poate cere sistemului să evalueze componentele înregistrate pe baza datelor din Intent (Intent implicit).

3.6 Servicii

Componenta de tip Service este o componentă care se execută în fundal, fără interacțiune directă cu utilizatorul și al cărei ciclu de viață este independent de cel al altor componente. Seviciul este folosit atunci când aplicația are de efectuat o operație de lungă durată care nu interacționează cu utilizatorul sau pentru a furniza funcționalități pentru alte aplicații. Odată pornit, serviciul respectiv își execută în mod implicit în cadrul firului de execuție principal sarcinile pe care le are de făcut chiar dacă componenta care l-a pornit inițial este distrusă.

3.7 Fragment

Fragment reprezintă o porțiune de interfață cu utilizatorul sau un comportament din cadrul unei activități. Se pot combina mai multe fragmente într-o singură activitate pentru a construi o interfață multi-panou sau se poate reutiliza un fragment în mai multe activități.

Pe un ecran mai mic arată doar un fragment și permite utilizatorului să navigheze printr-un alt fragment. Imaginea următoare arată o astfel de implementare.

Interfață fragmentată pe ecran lat/ ecran mic

Un fragment trebuie să fie întotdeauna încorporat într-o activitate, ciclul de viață al fragmentului fiind afectat în mod direct de ciclul de viață al activității gazdă. Obiectele de tip fragment au propiul ciclu de viață. Ciclul de viață al fragmentului diferă de cel al activității atunci cand activitatea se rulează, fiecare fragment putând fi manipulat independent (adăugare, eliminare, modificare de fragment, etc.). De exemplu, dacă activitatea este întreruptă atunci și fragmentele incluse în aceasta sunt întrerupte. Ca și structură, componenta de tip fragment este foarte similară cu cea de tip Activity, în cadrul lor regăsindu-se pe lângă metode specifice și metodele onCreate(Bundle), onStart(), onResume(), etc.

CAPITOLUL IV

STRUCTURA APLICATIEI GHID IMFORMATIV FILME: MOVIE GUIDE

Pentru realizarea aplicației s-au folosit clase. Pentru implementarea claselor s-a realizat diagram de clase. Diagrama de clase este prezentată în figura de mai jos:

Având structura proiectului se pot detalia puțin clasele și fișierele care compun aplicația:

Principalele clase necesare pentru implementarea aplicației:

Api.java – realizează legatura între aplicația android și baza de date online (https://www.themoviedb.org/) dar și cu youtube.

BaseApplication.java – pune laolaltă resursele aplicației, gestionează lucrul cu baza de date online.

Movie.java – prin intremediul acestei clase se preiau date despre filme cum ar fi: titlul filmului, posterul filmului, data în care va aparea filmul, nota de la critici de filme; pentru realizarea acestei clasa s-au folosit constructorul implici, și constructorul de copiere.

Review.java – prin intremediul acestei clase se preiau comentariile despre filme; pentru realizarea acestei clase s-au folosit constructorul implici și constructorul de copiere.

Video.java – cu ajutorul acestei clase se face legatura cu youtube pentru a vizualiza trailer-ul filmelor; pentru realizarea acestei clasa s-au folosit constructorul implici și constructorul de copiere.

Adaugare la „Favorite” și informații despre filme:

In folderul details sunt implementate clasele și interfetele necesare preluarii informatiilor despre filme.

MovieDetaileFragment implementat cu Fragment; aceasta clasa pune laolaltă toate resursele aplicației;

In folderul favorites sunt implementate clasele și interfata prin intermediul cărora filmul preferat este salvat în lista de favorite.

FavoritesStore.java – prin intermediul aceastei clase se adaugă la favorite filmul prin acționarea icon-ului ‚favorite’:

Resursele folosite pentru implementarea aplicației:

AndroidManifest.xml – definește permisiunile resurselor utilizate:

activity_main.xml– asigură interfața cu utilizatorul

sorting_option.xml– interfața de sortare

In folderul values se afla urmatoarele:

colors.xml – culorile folosite in aplicatie.

dimens.xml – dimensiunile pentru clipuri, poze si butoane.

string.xml:

style.xml – style-urile folosite în aplicație:

CAPITOLUL V

IMPLEMENTAREA APLICAȚIEI GHID PENTRU FILME: MOVIE GUIDE

La lansarea aplicației Movie Guide ecranul dispozitivului va afisa:

Imagine de mai sus reprezină pagina principală. Unde sunt încarcate cele mai populare filme.

Aplicația pune la dispoziție și un buton de sortare care realizează sortarea în funcție de: cele mai populare filme, cele mai bine cotate filme, cele mai noi filme și cele pe care utilizatorul le adaugă la favorite.

Prin acționarea butonului de sort va aparea urmatoare interfata:

Prin selectare unui film se va deschide o altă interfață care va prezenta detalii despre film cum ar fi: titlul, data la care va fi realizat, posterul filmului și trailer-ul filmului care ne va duce la youtube.com.

Prin selectarea butonului ‘favorite’ filmul va fi adaugat la lista de filme preferate. Prin deselectare butonului filmul va fi scos din lista. Interfața în care sunt se află filmele preferate este urmatoarea:

CAPITOLUL VI

CONCLUZII

Android este un sistem de operare “open source” bazat pe Linux pentru dispozitive mobile, cu foarte multe avantaje: proiect deschis, comunitate mare de programatori, cotă de piață mare, mediu de dezvoltare (Android Studio) foarte bogat (emulator performant, editor intelligent, testare rapidă, support pentru toate dispozitivele Android) care oferă multe facilitati, amintind doar cateva mai jos:

Conectivitate – Wi Fi , Bluetooth.

Interfața cu utilizatorul plăcuta și intuitivă

Multi-task – mai multe aplicatii pot rula în acelasi timp

Suport Media – MP3, MP4, JPEG, H.264, BMP …

Aplicații pentru orice

Dezvoltat de Google

Principalele avantaje ale folosirii platformei Android îl constituie numărul mare de informații, resurse, mostre de cod și numărul mare de dezvoltatori cu experiență dispuși să ajute atunci când întâmpini o problemă. Dezvoltarea de noi aplicații nu necesită achiziționarea unei licențe care costă, dezvoltarea fiind gratuită și la îndemâna oricărei persoane care dorește să încerce.

Aplicația Movie Guide a fost dezvoltată folosind SDK-ul Android și mediul Android Studio făcând uz de multe din facilitățile menționate mai sus (interfață placuta cu utilizatorul, conectivitate, multi-task) precum și de alte particularități ale limbajelor Java și Android menționate în această lucrare.

CAPITOLUL VII

BIBLIOGRAFIE

[1] Pagina oficială de dezvoltare pe platformaAndroid – https://developer.android.com/index.html

[2] Forum programare general- stackoverflow.com

[3] https://www.link-academy.com/curs-introducere-in-dezvoltarea-aplicatiilor-android

[4] https://www.youtube.com/watch?v=LtJymon_g8I&t=131s

[5] https://www.youtube.com/watch?v=qt3WCP-_uaY

[6] https://github.com/

[7] http://www.vogella.com/tutorials/Android/article.html

[8]http://www.itcsolutions.eu/2011/09/08/android-tutorial-concepte-activitati-si-resurse-ale-unei-aplicatii-android/

Similar Posts