Sunteți pe pagina 1din 9

Ministerul Educaţiei al Republicii Moldova

Universitatea Tehnică a Moldovei

Facultatea Calculatoare Informatica si Microelectronica

Departamentul Ingineria Software si Automatica

RAPORT
Lucrarea de laborator nr.2
Programarea aplicatiilor mobile
Tema: Organiser Mobile Application (DAILY PLANNER)

A efectuat:
st. gr. TI-181
Vrabie
Aliona

A verificat:
asist. univ.
C. Rusu

Chisinau 2020
Scopul lucrarii
De realizat aplicație tip Organiser pe platforma aleasă. La formarea și proiectarea aplicațiilor sunt
introduse puncte stricte, ce sunt obligatorii de respectat. La discreția personală rămâne designul aplicației
și API-ul/Framework-ul în care va fi dezvoltată lucrarea de laborator #2. Componentele și structura
fiecărei Activități va fi descrisă mai jos.
UI Components
Aplicația va conține minim 3 Activități de baza care vor fi numerotate în lucrare sub forma:
1. MainActivity (structura/componente)
Calendar View (custom or default)
Buttons (Add/Remove/Update)
Căutare (caută conform cuvintelor cheie)
2. AddtActivity
Data/Time controller
Info TextBox
Buttons și altele (la discreție conform specificului aplicației)
3. UpdateActivity - practic e una și aceeași activitate de la Add, doar ca completata deja.
Datele operaționale din interiorul aplicației vor fi stocate în fișier/e XML forma cărora rămâne la
discreția personală. (cuvinte cheie, XML Serialization).
Logical/Operational Component
Toate evenimentele și acțiunile de notificare/semnalizare (sonore/vizuale) intreprinse în Organiser
vor fi tratate într-un serviciu aparte, care logic funcțional va extrage datele din acel fișier XML.

Desfasurarea lucrarii de laborator


In lucrarea data am creat o aplicatie „DailyPlanner” in care putem sa adaugam anumite evenimente,
care mai apoi sa fii reamintite pentru indeplinirea lor sau doar pentru o informatie oarecare. Primul pas a
fost crearea unui project nou, dupa care l-am redenumit la fel „DailyPlanner” am ales platforma de
android API 24 pentru a se combina cu telefonul meu. Am adăugat o activitate pentru telefon și am ales
Emty Activity.
Activitatea data contine butonul de adaugare a unui eveniment, daca este creat cel putin un
eveniment el va fi afisat in aceasta activitate, iar daca nu a fost create evenimente atunci nu se va afisa
nimic. Aceasta activitate mai contine si butoanele de cautare si de afisare a calendarului. Care la rindul lor
servesc pentru a cauta un eveniment creat in lista de evenimente care va fi afisata dupa crearea tuturor
evenimentelor, pe cind in calendar va fi afisat la fiecare data unde a fost creat un eveniment, datele
referitoare la acest eveniment, de regula este afisat doar numele evenimentului, data , luna , anul si ora la
care a fost setat evenimentul care dupa un timp vom primi o notificare in privinta evenimentului.
Figura 1 – Pagina principala a aplicatiei

In figura 2 de mai joi este reprezentata activitatea unde utilizatorul creaza un eveniment nou.
Utilizatorul are 2 optiuni pentru evenimentul creat, el poate sa creeze evenimentul si sa seteze o anumita
ora sau data sau poate crea evenimentul fara data si ora. Iar daca utilizatorul doreste sa paraseasa
activitatea unde are loc crearea evenimentul trebuie doar sa apese butonul „X”.
Figura 2 – Adaugarea unui eveniment

In figura 3 este reprezentata activitatea unde are loc afisarea evenimentelor create anterior de catre
utilizator. Este afisat denumirea evenimentului, imaginea cu primul simbol din denumirea evenimentului si
daca a fost setata ora si data atunci ele sunt afisate mai jos de denumirea evenimentului, altfel va fi afisat

2
doar denumirea evenimentului. In toolbar-ul de sus sunt 2 optiuni, pentru cautarea unui eveniment si
afisarea calendarului cu evenimentele create iar mai jos este butonul de adaugarea a unui nou eveniment.

Figura 3 – Afisarea evenimentelor create


Concluzii
În urma efectuării acestei lucrări de laborator s-a realizat un daily planner in care putem crea anumite
evenimente, indicind ora si data cind sa primim o notificare referitoare la un anumit evenimentul. Astfel putem
sa stergem evenimentul daca nu avem nevoie sau chiar putem si sa-l modificam in caz de necesitate.

5
Bibliografie
1 Tutorial [Resursă electronică]. Regim de acces: https://www.youtube.com/
2 Material ajutator [Resursă electronică]. Regim de acces: https://stackoverflow.com/
3 Material ajutator [Resursă electronică]. Regim de acces: http://www.w3ii.com/ro/

6
Anexa
Codul sursa

package com.example.app_calendar;

import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.CalendarView;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

CalendarView calender;
TextView date1;
Button btn_new;
String st_d;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

calender = (CalendarView) findViewById(R.id.calendar);


date1 = (TextView) findViewById(R.id.date1);
btn_new=(Button)findViewById(R.id.btn_new);
calender.setOnDateChangeListener( new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int
dayOfMonth)
{
String date = dayOfMonth + "/" + (month + 1) + "/" + year;
date1.setText(date);

}
});

btn_new.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent=new Intent(MainActivity.this, AddActivity.class);
st_d=date1.getText().toString();
intent.putExtra("date2",st_d);
startActivity(intent);

}
});
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.search,menu);
return super.onCreateOptionsMenu(menu);
}
}
22

S-ar putea să vă placă și