lab1 instrukcja

background image

Programowanie dla technologii bezprzewodowych

mgr Paweł Cudek

Programowanie dla technologii bezprzewodowych

Laboratorium 1

Cele:

Zapoznanie się z architekturą aplikacji dla systemu Android

Przygotowanie środowiska programistycznego

Uruchomienie przygotowanych aplikacji

Tworzenie prostych aplikacji

Zadania

Materiały do zadao znajdują się na dysku wspólnym w katalogu PCudek\ Programowanie dla technologii
bezprzewodowych\Lab 1
.
Obraz wirtualnego systemu operacyjnego Win XP na którym należy wykonad zadania znajduje się w katalogu
PCudek\ Programowanie dla technologii bezprzewodowych\ Win_XP_Android

1. Skopiuj i uruchom wirtualną maszynę. Obraz został przygotowany zgodnie z instrukcją dostępną na

http://developer.android.com/sdk/installing.html

Po uruchomieniu zmieo nazwę komputera w sieci na wNUMER_INDEKSU (Start->Mój komputer-
>Właściwości ->Nazwa komputera->Zmieo)

2. Uruchom program Eclipse wpisując w adresie obszaru roboczego (workspace) D:\@projekty\lab1 .

Sprawdź czy środowisko programistyczne jest przygotowane do uruchomienia projektu wykonując
następujące czynności:

a) Window ->Preferences->Android->SDK Location: C:\PROGRA~1\Android\android-sdk

UWAGA!!! Pamiętaj aby nazwę „Program Files” zamienid na PROGRA~1 lub w przypadku ”
Program Files (86)” na PROGRA~2

b) Window ->Android SDK and AVD Manager: sprawdź czy na liście wirtualnych urządzeo znajduje

się urządzenie, które zamierzasz wykorzystad w projekcie

3. Wykorzystując AVD Manager utwórz wirtualną maszynę systemu Android 2.1

background image

Programowanie dla technologii bezprzewodowych

mgr Paweł Cudek

4. Wybierając File->New->Other utwórz nowy „Android project” z następującymi ustawieniami:

5. Przygotuj konfigurację uruchomienia aplikcji Run->Run Configurations … (dodaj nową konfigurację

Android Application o nazwie „Hellowrod Run”)
W zakładkach: android - wskaż projekt helloword, target – zaznacz wirtuaną maszynę, common – w
obszarze „display in favorites menu” zaznacz opcję Run i potwierdź wybór przyciskiem Apply.

background image

Programowanie dla technologii bezprzewodowych

mgr Paweł Cudek

6. Uruchom aplikację helloword za pomocą:

Zamknij aplikację.

7. Utwórz nowy projekt Android o nazwie Quiz. W polu „Package name” wpisz pl.wsiz.quiz.

8. Zanim zaczniesz pisad program zapoznaj się z działem Teoria

9. Przygotuj konfigurację uruchomieniową o nazwie Quiz zgodnie z punktem 5 wskazując w zakładce

android projekt Quiz.

10. Ustawienie pierwszego acitvity – otwórz plik /res/layout/main.xml.

Do ułożenia elementów na ekranie będziemy używad prostego układu o nazwie LinearLayout w tym celu
wyczyśd zawartośd pliku main.xml i wklej poniższy kod:

<?

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"

>

</

LinearLayout

>

Właśnie usunęliśmy przykład HelloWord i pozostawiając jedynie layout.

11. Wewnątrz LinearLayout stwórz element TextView dodając mu atrybuty

android:id

=

"@+id/question"

android:text

=

"Proszę czekać.."

android:layout_width

=

"fill_parent"

android:layout_height

=

"wrap_content"

12. Poniżej element TextView dodaj element LinearLayout dodając mu atrybuty:

android:id

=

"@+id/answers"

android:orientation

=

"vertical"

android:layout_width

=

"fill_parent"

android:layout_height

=

"wrap_content"

13.

Wewnątrz element z punktu 12 dodaj trzy przyciski, które będą wariantami naszych odpowiedzi

<

Button

android:id

=

"@+id/tak"

android:text

=

"Tak!"

android:layout_width

=

"fill_parent"

android:layout_height

=

"wrap_content"

/>

<

Button

android:id

=

"@+id/nie"

android:text

=

"Nie!"

android:layout_width

=

"fill_parent"

android:layout_height

=

"wrap_content"

/>

<

Button

android:id

=

"@+id/moze"

android:text

=

"Być może"

android:layout_width

=

"fill_parent"

android:layout_height

=

"wrap_content"

/>

background image

Programowanie dla technologii bezprzewodowych

mgr Paweł Cudek

14.

Dodamy teraz jeszcze dwa przyciski. Jeden pozwoli nam pominąd aktualne pytanie a drugi będzie

prowadził do listy posiłków, które przygotowaliśmy. Przyciski należy umieścid poniżej elementu
LinearLayout o Id=”answers”

<

Button

android:id

=

"@+id/skip"

android:text

=

"Pomiń pytanie"

android:layout_marginTop

=

"12sp"

android:layout_width

=

"fill_parent"

android:layout_height

=

"wrap_content"

/>

<

Button

android:id

=

"@+id/view"

android:text

=

"Gotowe posiłki!"

android:layout_marginTop

=

"12sp"

android:layout_width

=

"fill_parent"

android:layout_height

=

"wrap_content"

/>

15. Korzystając z widoku Graphical Layout zmieo atrybuty wyglądu elemenu o id=”question” (prawy

przycisk na elemencie->properties”:
- wycentruj tekst
- pogrub czcionkę
- zmieo rozmiar czcionki na 24sp
- dodaj dolny margines o wartości 12sp
Zmiany te możesz też wprowadzid ręcznie w widoku xml dopisując odpowiednie atrybuty dlo znacznika
np.

android:gravity

=

"center"

(oznacza wyśrodkowanie tekstu).

16. W przycisku o id=”view” umieśd atrybuty :

- rozmiar czcionki 18sp
- kolor tekstu #9d1111
- pogrubienie
- cieo tekstu: x=0, y=-3, radius=1.5, kolor #ffffff

Teoria

Struktura projektu

src – zawiera Activity i kod programu w pakietach, tak jak w przypadku innych aplikacji Java.

gen – zawiera pliki Java wygenerowane przez ADT, w tym klasę R. Nie zaleca się modyfikacji w tym

plikach.

Android 2.1 – a wewnątrz android.jar, który jest frameworkiem dla naszej aplikacji.

assets – przechowuje pliki nie zaliczające się do zasobów (res). W większości aplikacji pusty

Res – katalog, w którym będziemy przechowywad wszelkie zasoby, tj. zdjęcia, napisy, pliki multimedialne

itp.

AndroidManifest.xml – plik manifestu. (Jest to zbiór informacji o aplikacji, wskazuje m.in. wersję,

zależności, wymagania, sdk, activity itp.)

default.properties – zawiera konfigurację projektu.

Komponenty

Acivities

Każdy ekran to oddzielna klasa rozszerzająca klasę Activity, czyli jest to wizualny interfejs użytkownika.

background image

Programowanie dla technologii bezprzewodowych

mgr Paweł Cudek

Widok może przyjmowad wiele postaci. (widok pełnoekranowy, pop-up o dowolnym rozmiarze itd.).
Aplikacja może zawierad wiele widoków. Aplikacje nie mają jednego punktu startu (nie ma metody main()).
Activities są komponentami.

Services

Nie posiadają interfejsu użytkownika, działają w tle. Rozszerzają klasę Service.
Przykład: odtwarzanie plików muzycznych działa w tle podczas, gdy my korzystamy w wysyłamy SMS-a.

Broadcast recivers

Aplikacja nasłuchuje sygnałów i reaguje w momencie ich otrzymania. Rozszerzają klasę BroadcastReceiver.
Przykład: informacja o niskim stanie baterii.

Content providers

Udostępniają dane innym programom. Działają na zasadzie kontrolera we wzorcu MVC. Rozszerzają klasę
ContentProvider .


Intencje
Intencją będziemy nazywad akcję oraz powiązane z nią dane
Wywołania aplikacji z poziomu innej
aplikacji.
• Wywołania wewnętrznych lub
zewnętrznych składników aplikacji.
• Można generowad zdarzenia na które inne
aplikacje mogą odpowiadad

background image

Programowanie dla technologii bezprzewodowych

mgr Paweł Cudek

Cykl życia activity

Nazwa

Opis

onCreate

Wywoływana gdy Activity jest tworzona. Tu ustawiamy
interfejs, pobieramy dane do list itp..
Przyjmuje parametr Bundle z zapisanym poprzednim stanem
widoku, jeżeli taki istnieje.

onStart

Wywoływana jeszcze przed ukazaniem się widoku
użytkownikowi

onRestart

Jeżeli widok jest wznawiany po zatrzymaniu.

onResume

Wywoływana chwilę przed rozpoczęcie interakcji z
użytkownikiem. Wywoływana jest zawsze po metodzie on
Pause.

background image

Programowanie dla technologii bezprzewodowych

mgr Paweł Cudek

onPause

Metoda wykonywana jest jeżeli widok jest zatrzymywany, np.
na rzecz innego widoku. Nie jest jeszcze, dokonuje ważnych
operacji np. zapisania danych, zatrzymania animacji itp..

onStop

Widok nie jest już widoczny dla użytkownika. Działa w tle lub za
chwilę zostanie zniszczony. Jeżeli działa w tle po metodzie
nastąpi onCreate() lub onDestroy()

onDestroy

Ostateczne działania przed zamknięciem activity.





Wyszukiwarka

Podobne podstrony:
Lab1 Instrukcja (2)
lab1 Instrukcja id 750240 Nieznany
Lab1 Instrukcja 4
Lab1 Instrukcja
Lab1 Instrukcja 2 id 258957 Nieznany
Lab1 instrukcja2010
Lab1 Instrukcja
Lab1 Instrukcja
Lab1 Instrukcja
Lab1 Instrukcja 2
Potencjometria lab1, WIMiC, instrumentalne
INSTRUKCJE, lab1, Wykorzystanie interfejsu graficznego
Instrukcja Lab1(1)
sieci LAB1, Informatyka, Informatyka - UJK, Sieci komputerowe, Instrukcje
Instrukcja lab1
Instrukcja Ptel Lab1

więcej podobnych podstron