paiip lab1

14
Ministerul Educaţiei al Republicii Moldova Universitatea Tehnică a Moldovei Facultatea Calculatoare, Informatică şi Microelectronică Raport Lucrarea de laborator nr. 1 Programarea Aplicațiilor Incorporate și Independente de Platformă Tema: Familiarizarea cu Android SDK A efectuat: St. gr. TI-122 Munteanu T.

Upload: grigore-vieru

Post on 03-Feb-2016

9 views

Category:

Documents


3 download

DESCRIPTION

utm lab paiip

TRANSCRIPT

Page 1: PAIIP lab1

Ministerul Educaţiei al Republicii Moldova

Universitatea Tehnică a Moldovei

Facultatea Calculatoare, Informatică şi Microelectronică

RaportLucrarea de laborator nr. 1

Programarea Aplicațiilor Incorporate și Independente de Platformă

Tema: Familiarizarea cu Android SDK

A efectuat: St. gr. TI-122 Munteanu T.

A verificat: I. Antohi

Page 2: PAIIP lab1

Chişinău 2014

Sarcina lucrării:

Elaborarea unei aplicații ce va efectua următoarele operații:

Deschiderea Navigatorului (Browser)

Afișarea unui mesaj

Deschiderea camerei

O activitate la alegere

Instalarea pachetului SDK

Pentru instalarea SDK este nevoie de descărcat arhiva de la următoarea adresă

http://developer.android.com/sdk/index.html după ce sa descărcat arhiva – o dezarhivăm

unde dorim.

La prima pornire (Eclipse) vom avea posibilitatea de a alege calea/directoriu unde vom salva

proiectele create prin eclipse, în caz că pachetul SDK nu se află în aceeași mapă ca și mapa Eclipse

atunci vom fi întrebați să indicăm calea spre pachetul SDK. În caz că nu au apărut aceste ferestre sau

a fost apăsat tasta Cancel calea spre pachetul SDK poate fi indicată accesând Window ->

Preferences și în fereastra ce va apărea indicăm calea spre pachetul SDK.

2

Page 3: PAIIP lab1

Realizarea lucrării

1.0 Afișarea unui simplu mesaj

Pentru afișarea acestui mesaj este nevoie de un TextView care va afișa un simplu text “Acesta

este un simplu TextView”, acest element este plasat în ../res/layout/activity_layout.xml, acest fișier

conține toate elementele ce sunt afișate în activity (vezi figura 1).

Figura 1. Interfața aplicației

1.1 Deschiderea Navigatoului

Pentru a implementa aplicația ce va deschide Navigatorul va fi nevoie de 1 element (Button).

Button va fi folosit pentru deschiderea navigatorului și transmiterea adresei din program.

Pentru a elabora programul ce va deschide Navigatorul va fi nevoie de preluarea adresei din

EditText după care creem un Intent ce va transmite un mesaj navigatorului cu această adresă și

pornim o nouă activitate folosind funcția startActivity() ce va porni Navigatorul și în care vom

transmite un intent cu adresa noastră.

Browser = (Button) findViewById(R.id.button3); Browser.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {

3

Page 4: PAIIP lab1

Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("http://acmilan.com/en")); startActivity(i);}

1.2. Schimbarea culorii de fundal si deschiderea fisierului mp3

Pentru aceasta este nevoie de 2 elemente în cazul dat vom folosi un LinearLayout și un

Button care va efectua operația. Pentru a deschide fisierul mp3 avem nevoie doar de buton.

public void onClick(View view) {

bck.setBackgroundColor(Color.parseColor("#ff0000"));

Intent intent = new Intent();

intent.setAction(android.content.Intent.ACTION_VIEW);

File file = new File("/sdcard/media/audio/CWSZ.mp3");

intent.setDataAndType(Uri.fromFile(file), "audio/x-wav");

startActivity(intent);

1.3Deschiderea camerei:

camera.setOnClickListener(new View.OnClickListener() {

private static final int CAMERA_REQUEST = 1888;

@Override

public void onClick(View view) {

Intent cameraIntent = new Intent(

android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

startActivityForResult(cameraIntent, CAMERA_REQUEST);

4

Page 5: PAIIP lab1

} });

1.4 Afisare text

public void Mesaj(View view){

switch (view.getId()) {

case R.id.button1:

SendMesaj();

break;

}

public void SendMesaj(){

TextView textElement=(TextView) findViewById(R.id.textView);

String modifyText;

modifyText = textElement.getText().toString();

modifyText = "Click!!!";

textElement.setText(modifyText);

}}

Concluzii:

Cu ajutorul IDE și ADT oferit de Google putem dezvolta aplicații pentru android rapid și

ușor și pe întelesul începătorilor. Pachetul ADT nu necesită instalarea și de aceea este foarte

convenabil, este doar nevoie de descărcat de pe developer.android.com și de dezarhita în orice dosar

dorim ca mai apoi să-l putem utiliza. Un al aspect ar fi posibilitatea creării aplicațiilor și testării lor

fără deținerea unui telefon mobil pe Android deoarece ADT oferă o mașină virtuală în care putem

testa aplicațiile create pe diferite versiuni de Android. Un alt plus deosebit de mare este

documentația oferită de Google prin intermediul căreia se poate de învățat de la 0 chiar dacă nu ai

cunoștințe de programare în Java.

5

Page 6: PAIIP lab1

Anexa A – activity_main.xml

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

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:gravity="center"

tools:context=".MyActivity"

>

<LinearLayout

android:layout_width="match_parent"

android:layout_height="match_parent"

android:layout_alignParentEnd="true"

android:layout_alignParentBottom="true"

android:layout_alignParentStart="true"

android:id="@+id/my">

</LinearLayout>

<TextView

android:text=""

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:id="@+id/textView"

android:layout_below="@+id/rez"

6

Page 7: PAIIP lab1

android:layout_alignEnd="@+id/btncm"

android:layout_marginTop="114dp" />

<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Text"

android:id="@+id/button1"

android:onClick="Mesaj"

android:layout_alignParentTop="true"

android:layout_alignStart="@+id/btncm"

android:layout_alignEnd="@+id/button3" />

<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Camera"

android:id="@+id/btncm"

android:layout_below="@+id/button1"

android:layout_centerHorizontal="true" />

<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="Browser"

android:id="@+id/button3"

android:layout_below="@+id/btncm"

android:layout_alignStart="@+id/btncm" />

7

Page 8: PAIIP lab1

<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:textStyle="bold|italic"

android:text="ClickTo"

android:id="@+id/rez"

android:layout_below="@+id/button3"

android:layout_alignEnd="@+id/button3" />

</RelativeLayout>

Anexa B – MainActivity.java

package com.example.tudor.lab;

import android.app.Activity;

import android.content.Context;

import android.content.DialogInterface;

import android.content.Intent;

import android.graphics.Color;

import android.net.Uri;

import android.os.Bundle;

import android.provider.MediaStore;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.widget.LinearLayout;

import android.widget.TextView;

import android.widget.Button;

8

Page 9: PAIIP lab1

import java.io.File;

import java.io.IOException;

public class MyActivity extends Activity {

LinearLayout bck;

Button camera;

Button Browser;

Button Rezerva;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_my);

bck = (LinearLayout) findViewById(R.id.my);

camera = (Button) findViewById(R.id.btncm);

Rezerva=(Button) findViewById(R.id.rez);

camera.setOnClickListener(new View.OnClickListener() {

private static final int CAMERA_REQUEST = 1888;

@Override

public void onClick(View view) {

Intent cameraIntent = new Intent(

android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

startActivityForResult(cameraIntent, CAMERA_REQUEST);

9

Page 10: PAIIP lab1

}

});

Browser = (Button) findViewById(R.id.button3);

Browser.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("http://acmilan.com/en"));

startActivity(i);

}

});

Rezerva = (Button) findViewById(R.id.rez);

Rezerva.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View view) {

bck.setBackgroundColor(Color.parseColor("#ff0000"));

Intent intent = new Intent();

intent.setAction(android.content.Intent.ACTION_VIEW);

File file = new File("/sdcard/media/audio/CWSZ.mp3");

intent.setDataAndType(Uri.fromFile(file), "audio/x-wav");

10

Page 11: PAIIP lab1

startActivity(intent);

}

});

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.my, menu);

return true;

}

@Override

public boolean onOptionsItemSelected(MenuItem item) {

int id = item.getItemId();

if (id == R.id.action_settings) {

return true;

}

return super.onOptionsItemSelected(item);

}

public void Mesaj(View view){

switch (view.getId()) {

case R.id.button1:

11

Page 12: PAIIP lab1

SendMesaj();

break;

}

}

public void SendMesaj(){

TextView textElement=(TextView) findViewById(R.id.textView);

String modifyText;

modifyText = textElement.getText().toString();

modifyText = "Click!!!";

textElement.setText(modifyText);

}}

12