Mariusz Fraś. Instytut Informatyki. olitechnika Wrocławska. Systemy Wbudowane. Android. Dr inż. Mariusz Fraś. maf 1

Wielkość: px
Rozpocząć pokaz od strony:

Download "Mariusz Fraś. Instytut Informatyki. olitechnika Wrocławska. Systemy Wbudowane. Android. Dr inż. Mariusz Fraś. maf 1"

Transkrypt

1 Systemy Wbudowane Dr inż. Android maf 1

2 Open Handset Alliance Android - podstawy Konsorcjum (sojusz) 78 firm mający na celu rozwój otwartych standardów dla urządzeń mobilnych Google, High Tech Computer (HTC), Dell, Intel, Motorola, Qualcomm, Texas Instruments, Samsung, Produkt sojuszu: Android oparty na licencji open source Wersje systemu Android Nazwa dydstrybucji Nr wersji Wersja API % rynku (marzec 2013) Jelly Bean 4.2.x 17 1,6 Jelly Bean 4.1.x 16 14,9 Ice Cream Sandwitch 4.0.x ,6 Honeycomb 3.x.x ,2 Gignerbread 2.3.x ,2 Froyo ,6 Eclair 2.0 i ,9 Donut ,2 Cupcake 1.5 3? maf 2

3 Android - podstawy maf 3

4 Podstawowe cechy Android - podstawy Jądro Linux 2.6.x i 3.0.x (od Android 4.0) Wirtualna maszyna Dalvik (DVM) Optymalizowana dla urządzeń mobilnych Pełna wielozadaniowość Brak obsługi czasu rzeczywistego Otwarte środowisko aplikacji: wielokrotne użycie i wzajemna wymiana komponentów Relacyjna baza danych SQLite Wsparcie: Zoptymalizowana grafika ze wspomaganiem sprzętowym 2D: Google Skia, 3D: Open GL ES Obsługa multimediów (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) Telefonia GSM, Bluetooth, EDGE, 3G, Wi-Fi Obsługa aparatu fotograficznego, GPSa, akcelerometra, kompasu Zintegrowana przeglądarka oparta na silniku WebKit Obsługa HTML 5 maf 4

5 Android - podstawy Architektura systemu maf 5

6 Android - podstawy Maszyna wirtualna Dalvik (DVM) Kod bajtowy aplikacji systemu Android jest uruchamiany w Dalvik VM Charakterystyka DVM Generowanie kodu maszynowego oparte na rejestrach (w JVM na stosach redukcja liczby instrukcji) Zoptymalizowana do działania na urządzeniach o ograniczonych zasobach (pamięć, moc obliczeniowa, brak pliku wymiany) Zoptymalizowana do jednoczesnego, wydajnego uruchamiania wielu swoich instancji Pliki kodu bajtowego klas Java (*.class) przetwarzane na kod bajtowy w formacie Dalvik Executable (*.dex) Eliminacja informacji powtarzających się w plikach klas Plik DEX ma mniejszy rozmiar w stosunku do pliku JAR Od wersji Android 2.2 wbudowany kompilator JIT (Just In Time) maf 6

7 Android - podstawy Środowisko programowania Język Java Ponad 40 pakietów i 700 klas (najważniejsze w android.*) Możliwe wstawki C/C++ Platforma programistyczna Java 2 SE (min. JDK 5) Android SDK Eclipse IDE (min. 3.3) ADT wtyczka do Eclipse obsługująca Android SDK Emulator systemu AVD (Android Virtual Device) Symulowany 32-bitowy tryb ARM - na symulowanym procesorze uruchamiany jest Linux i platforma Android Naśladuje większość funkcji urządzenia Ograniczenia: połączenia USB i Bluetooth, obsługa słuchawek, symulacja baterii, symulacji stanu połączenia do sieci, realizacji połączeń telefonicznych maf 7

8 Architektura aplikacji Struktura i elementy koncepcyjne aplikacji Aplikacje są uruchamiane w oddzielnych instancjach Dalvik VM W oddzielnych procesach, w środowisku chronionej pamięci Każdy proces ma własny identyfikator ID i przydzielony priorytet Aplikacja składa się z wielu składników posiadających swój własny cykl życia Odbior. komunik. (broadcast receiver) Aktywność (activity) Usługa (service) Widok (view) Interakcje Dostawca treści (content provider) Intencja (intent) maf 8

9 Architektura aplikacji Aktywność (activity) Element aplikacji przeznaczona do wykonywania przez użytkownika akcji, czynności Jednostka interfejsu użytkownika - reprezentuje ekran/okno aplikacji (każdy ekran aplikacji jest oddzielną aktywnością) Może zawierać widoki (view) Aktywność wyświetla interfejs użytkownika złożony z widoków Reaguje na zdarzenia Uruchamiana przez intencję lub przez inną aktywność W danym momencie użytkownik może być w interakcji z jedną aktywnością W aplikacji możliwe jest uruchamianie aktywności z innych aplikacji Aktywności są grupowane i przechowywane na stosie Odbior. komunik. (broadcast receiver) Aktywność (activity) Usługa (service) Widok (view) Interakcje Dostawca treści (content provider) Intencja (intent) maf 9

10 Architektura aplikacji Widok (view) Element interfejsu użytkownika Rysowany obiekt składnik interfejsu Mający kształt etykiety, przycisku, pola edycyjnego, itp. Usługa (service) Proces działający w tle (przez dłuższy czas) Nie posiada interfejsu użytkownika Może być lokalna (w bieżącej aplikacji) lub zdalna (łączy się z innymi aplikacjami) Odbior. komunik. (broadcast receiver) Aktywność (activity) Usługa (service) Widok (view) Interakcje Dostawca treści (content provider) Intencja (intent) maf 10

11 Architektura aplikacji Odbiornik komunikatów (broadcast receiver) Umożliwia odbieranie komunikatów o zdarzeniach i odpowiadanie na nie (np. niski stan baterii, pobranie danych, połączenie przychodzące, wykonanie zdjęcia itp.) Komunikaty mają formę intencji (intent) i są rozgłaszane przez system lub przez inne aplikacje Nie posiada interfejsu Może tworzyć powiadomienia w pasku stanu Odbior. komunik. (broadcast receiver) Aktywność (activity) Usługa (service) Widok (view) Interakcje Dostawca treści (content provider) Intencja (intent) maf 11

12 Architektura aplikacji Dostawca treści (content provider): Abstrakcyjne źródło danych (dostawca lub adresat usług REST) Dla: system plików, baza SQLite, sieć Udostępnia źródło danych Zapewnia dostęp do składowanych danych Umożliwia odczyt i zapis danych Umożliwia współdzielenie danych między aplikacjami Odbior. komunik. (broadcast receiver) Aktywność (activity) Usługa (service) Widok (view) Interakcje Dostawca treści (content provider) Intencja (intent) maf 12

13 Intencja (intent) Architektura aplikacji Abstrakcyjny opis operacji, która ma być wykonana Definiuje możliwość wykonania czynności (np. uruchomianie aktywności, uruchomianie usługi, nadawanie komunikatu itp.) Wykorzystywana przez aplikacje lub przez system do powiadamiana różnych składników aplikacji o zdarzeniach Dla aktywności i usług intencja definiuje akcję do wykonania (VIEW, PICK, EDIT) i mogą specyfikować dane do przetworzenia (w formie URI danych) Dla odbiorników komunikatów definiuje rozgłaszany komunikat Może być jawna lub niejawna Odbior. komunik. (broadcast receiver) Aktywność (activity) Usługa (service) Widok (view) Interakcje Dostawca treści (content provider) Intencja (intent) maf 13

14 Cykl życia aktywności Cykl życia aplikacji Cykl życia aplikacji związany jest z cyklem życia jego składowych Cyklem życia zarządza system Aktywność zmienia stan w zależności od działań użytkownika (zamykanie okna, przywracanie itp.) Przy zmianie stanu wykonywana jest odpowiednia metoda aktywności Metoda oncreate() onstart() onrestart() onresume() onpause() onstop() Znaczenie Pierwsze utworzenie aktywności: inicjalizacja, tworzenie interfejsu użytkownika. Uruchomienie aktywności. Ponowne uruchomienie aktywności (przywrócenie na pierwszy plan), przejście ze stanu STOPPED do stanu działania. ondestroy() Przejście na pierwszy plan ze stanu PAUSED do stanu działania RESUMED. Wstrzymanie aktywności (w stan PAUSED), gdy inna aktywność przechodzi na pierwszy plan (bieżąca aktywność jest widoczna, ale częściowo zasłonięta). Ostatnia bezpieczna metoda wywoływana przed zamknięciem aplikacji. Aktywność na drugim planie (stan STOPPED, nie już widoczna). Usuwanie i zakończenie działania aktywności. maf 14

15 Cykl życia aktywności W pierwszej kolejności usuwane są aplikacje o niskim priorytecie, np. usługa działająca w tle ma wyższy priorytet niż aktywność znajdująca się na dnie stosu. Cykl życia aplikacji Użytkownik wywołuje aktywność Inna aplikacja żąda pamięci Inna aktywność przechodzi na pierwszy plan Aktywność przechodzi na pierwszy plan Aktywność nie jest już widoczna Aktywność kończy działanie lub jest zabijana przez system Aktywność przechodzi na pierwszy plan (użytkownik aktywuje ją) maf 15

16 Cykl życia aplikacji Szkielet aplikacji metody zmiany stanu (callbacks) obiekt zawierający public class PrzykladSzkieletu extends Activity poprzedni stan public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate);... // aktywność jest } protected void onpause() super.onpause(); protected void onstart() { // inna atywność przejmuje fokus super.onstart(); // (ta aktywność będzie pauzowana). // aktywność ma się stać widoczna protected void onstop() { protected void onresume() { super.onstop(); super.onresume(); // aktywność jest niewidoczna // aktywność stała się widoczna // (jest zatrzymywana) // (jest wznowiona) } protected void ondestroy() { super.ondestroy(); // aktywność będzie usunięta callbacks } } maf 16

17 Struktura aplikacji Budowa aplikacji Szablon generowany automatycznie po utworzeniu projektu Skład: Nazwa.java kod źródłowy głównej klasy AndroidManifest.xml deskryptor aplikacji Określa zawartość i zachowanie aplikacji Deklaruje składniki aplikacji (aktywności, usługi, dostawców treści, odbiorniki kom.), uprawnienia konieczne do działania aplikacji i wymagania sprzętowe R.java kod klasy R, identyfikatory zasobów main.xml główny plik zasobów Opis i definicja interfejsu (układu graficznego) strings.xml dodatkowe zasoby Struktura katalogów /assest /bin /gen /res /src Dowolne dane (nieskompresowane), nie traktowane jak zasoby Pliki binarne *.class, *.dex, *.apk Pliki generowane (plik R.java) posegregowane na pakiety Zasoby aplikacji Pliki źródłowe *.java posegregowane na pakiety Pliki zasobów maf 17

18 AndroidManifest.xml Budowa aplikacji W węzłach deklaruje składniki aplikacji, uprawnienia konieczne do działania aplikacji i inne elementy <manifest> główny węzeł pliku Musi zawierać węzeł <application> i pola: - android= przestrzeń_nazw_androida, oraz - package= nazwa_pakietu nazwę pakietu aplikacji <supports-screens> określa wymagane rozmiary ekranu: small, normal, large, extra large i rozdzielczość: low, medium, high, extra high <uses-permission> określa uprawnienia, które muszą być udzielone aplikacji w czasie instalacji Konieczne do prawidłowego działania aplikacji Przykładowe uprawnienia: READ_CONTACTS, WRITE_CONTACTS do odczytu/zapisu listy kontaktów RECEIVE_SMS, SEND_SMS do odbioru i wysyłania wiadomości SMS BLUETOOTH uprawnienie do łączenia się z urządzeniami Bluetooth maf 18

19 Budowa aplikacji AndroidManifest.xml Węzły (c.d.) <uses-sdk> określa kompatybilność aplikacji z wersjami Android (minimalną wymaganą wersję API i/lub docelową i/lub maksymalną) <uses-feature> określa wymagania sprzętowe np. aparat fotograficzny, Bluetooth itp. <application> deklaruje aplikację, opisuje jej właściwości, zawiera węzły: <activity> deklaruje aktywność <service> deklaruje usługę <receiver> deklaruje odbiornik komunikatów <provider> deklaruje dostawcę treści <uses-library> deklaruje użycie dodatkowych bibliotek Te elementy mogą posiadać własne filtry intencji <intent-filter> precyzujące, które intencje będą obsługiwane maf 19

20 Budowa aplikacji AndroidManifest.xml - przykład <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="org.mojpakiet" Nazwa głównego pakietu jest kojarzona android:versioncode="1" z nazwą aktywności i jej klasą: android:versionname="1.0"> org.mojpakiet.jeden <uses-sdk android:minsdkversion="10"/> wersja API (10=Android 2.3) <application ikona aplikacji (w zasobach) nazwa aplikacji (w string.xml) <activity deklaracja aktywności android:name=".jeden"> Filtr intencji dla aktywności. Definiuje jak <intent-filter > (czym) można aktywować aktywność. <action android:name="android.intent.action.main"/> <category android:name="android.intent.category.launcher"/> </intent-filter> </activity> Określenie aktywności początkowej. Przy uruchamianiu </application> aplikacji odczytywany jest plik manifestu, wyszukiwane są i </manifest> uruchamiane aktywności o akcji MAIN i kategorii LAUNCHER. maf 20

21 Budowa aplikacji Koncepcja interfejsu użytkownika Podstawowe składniki interfejsu Widok (View) kontrolka Widok kontroluje prostokątny obszar wewnątrz okna Podstawowy element interfejsu użytkownika Ma przypisany unikalny ID Pojemnik (GroupView) Kontener służący do przechowywania innych widoków Układ graficzny (Layout) Layout jest niewidocznym pojemnikiem rozszerzającym klasę ViewGroup Układ graficzny zarządza rozmieszczeniem kontrolek wewnątrz pojemnika Widoki mogą być opisane w plikach XML Okno Domyślnie okno aktywności zajmuje całą powierzchnię ekranu Zawartość jest podporządkowana hierarchii widoku Układy widoków są określany za pomocą obiektów klasy Layout maf 21

22 Budowa aplikacji Elementy interfejsu widoki maf 22

23 Układy graficzne Budowa aplikacji Układy graficzne (layout / layout manager) Kontenerowe klasy widoku, pełniące rolę pojemników na widoki Zarządzają rozmiarami, rozmieszczeniem i pozycjonowaniem elementów podrzędnych (kontrolek lub innych układów) Idea podobna jak w Swing maf 23

24 Budowa aplikacji Tworzenie interfejsu użytkownika Metoda programowa niezalecana Interfejs definiowany bezpośrednio w kodzie źródłowym Java Trudności w wiązaniu i kojarzeniu ze sobą elementów interfejsu Małe zmiany w interfejsie mogą wymagać dużych zmian w kodzie źródłowym Java Metoda deklaracyjna (deklaratywna) zalecana Metoda inspirowana modelem tworzenia aplikacji MVC Interfejs definiowany w oparciu o pliki XML zapisywane w urządzeniu w postaci binarnej Separacja warstwy prezentacji (widoku) od warstwy logiki (kodu) Można zmieniać wygląd i zachowanie aplikacji poprzez edycję plików XML Kompilowane narzędziem AAPT (ang. Android Asset Packaging Tool) Struktura pliku XML ma postać drzewa elementów, w którym każdy węzeł opisuje właściwość elementu interfejsu maf 24

25 Budowa aplikacji - przykład Klasa główna kod źródłowy Jeden.java metoda programowa niezalecana package org.mojpakiet; import android.app.activity; import android.os.bundle; import android.widget.linearlayout; import android.widget.textview; aktywność początkowa (najwyższego poziomu) metoda wywoływana public class Jeden extends Activity { automatycznie gdy rozpoczyna działanie public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); LinearLayout mv = new LinearLayout(this); utworzenie układu graficznego TextView tv = new TextView(this); utworzenie widoku TextView tv.settext( Witaj! Tu Jeden. ); i ustawienie napisu mv.addview(tv); dodanie widoku TextView do układu setcontentview(mv); przypisanie układu do okna ekranu - wyświetlenie układu }} maf 25

26 Budowa aplikacji - przykład Definiowanie widoków i odnośniki w kodzie Java Zdefiniowanie widoku w pliku XML zasobów i przypisanie ID main.xml główny plik zasobów dla głównej aktywności Węzeł w pliku XML opisuje właściwości elementu interfejsu <TextView przestrzeń nazw XML xmlns:android="http://schemas.android.com/apk/res/android" kontrolka TextView ma android:layout_width="fill_parent" identyfikator tv1 poprzez który android:layout_height="wrap_content" odwołujemy się do niej w kodzie /> szerokość i wysokość elementu na ekranie: napis umieszczony w etykiecie tekstowej TextView fill_parent wypełnia ekran identyfikator napisu to hello, wrap_content dostosowana zawartość napisu jest zdefiniowana w pliku strings.xml do zawartości elementu Utworzenie instancji widoku z opisu widoku (typowo w oncreate()) setcontentview(r.layout.id_pliku_zasobów) Odwołanie do widoku: view findviewbyid(r.id.id_widoku) maf 26

27 Budowa aplikacji - przykład Klasa główna kod źródłowy Jeden.java metoda deklaratywna zalecana package org.mojpakiet; import android.app.activity; import android.os.bundle; import android.widget.textview; public class Jeden extends Activity public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); } TextView tv = (TextView) findviewbyid(r.id.tv1); } aktywność początkowa (najwyższego poziomu) metoda wywoływana automatycznie gdy aktywność rozpoczyna działanie wczytanie zasobów i wyświetlenie układu zasoby zdefiniowane w main.xml identyfikator widoku tv odwołanie się do kontrolki zdefiniowanej w XML (metoda findviewbyid) maf 27

28 Budowa aplikacji - przykład Główny plik zasobów main.xml Układ interfejsu zdefiniowany w main.xml jest realizowany w oknie głównej aktywności (tu: Jeden) Węzeł LinearLayout opisuje liniowy układ interfejsu użytkownika <?xml version="1.0" encoding="utf-8"?> standardowy nagłówek XML <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" układ wypełnia ekran android:orientation="vertical" > elementy interfejsu są <TextView rozkładane w poziomie węzły definiują zawartość android:layout_width="fill_parent" i opisują układ dla android:layout_height="wrap_content" elementów wewnątrz /> </LinearLayout> maf 28

29 Budowa aplikacji Składnia odnośników do zasobów Odnośnik do zasobu wiąże zasób zdefiniowany w pliku XML z jego identyfikatorem Schemat: Np.: oznacza że parser ma rozwiązywać resztę łańcucha znaków pakiet nazwa pakietu (brak oznacza pakiet lokalny) + opcjonalny, oznacza, że identyfikator zostanie utworzony jeżeli jeszcze nie istnieje (jest to nowy zasób) typ rodzaj zasobu, określany przez przestrzeń nazw R.string, R.layout, R.id, R.drawable lub R.attr klasy wewnętrzne R identyfikator identyfikator zasobu (nazwa) identyfikator jest stałą typu int w pliku R.java maf 29

30 Budowa aplikacji - przykład Plik zasobów strings.xml Dodatkowy plik zasobów przechowuje napisy w węzłach <string> Właściwość name to identyfikator napisu <?xml version="1.0" encoding="utf-8"?> możliwe formatowanie (Java i HTML) <resources> <string name="hello">witaj! Tu <b><i>jeden</i></b>.</string> <string name="app_name">prog1</string> </resources> napis o identyfikatorze app_name Odnośniki do napisów w Java String s1 = aktywnosc.getstring(r.string.hello); Odnośniki do napisów w plikach XML <Kontrolka /> np. TextView referencja do obiektu aktywności napis o identyfikatorze hello maf 30

31 Kasa R plik R.java Budowa aplikacji - przykład Generowana automatycznie klasa R zawiera identyfikatory zasobów aplikacji z katalogu /res Dla każdego rodzaju zasobów tworzona jest klasa wewnętrzna: drawable, layout, string itd. package org.przyklad.prog1; Identyfikatory zasobów mają postać public final class R { stałych typu int. Odpowiadają zasobom, elementom zdefiniowanym public static final class attr w plikach XML, lub plikom. { } public static final class drawable { zasoby graficzne, tu: ikona public static final int ic_launcher = 0x7f020000; ic_launcher.png } public static final class layout { public static final int main = 0x7f030000; } identyfikator pliku main.xml public static final class string { public static final int app_name = 0x7f040001; public static final int hello = 0x7f040000; } } identyfikatory zasobów z pliku strings.xml maf 31

32 Inne aktywności Analogiczna struktura Budowa aplikacji Nazwa pliku zasobów - dowolna Rodzaje zasobów string - napisy layout układy graficzne color - kolory dimension wymiary image obrazki drawable rysowalne, kolorowe obiekty Własne pliki XML (xml) Własne pliki nieskompresowane (raw) np. pliki video Pliki dodatkowe (tzw. assest) nie są traktowane jak zasoby maf 32

33 Budowa aplikacji - przykład Aplikacja na emulatorze nazwa aplikacji napis etykiety TextView ekran emulowanego urządzenia Klawisze funkcyjne klawiatura numeryczna maf 33

akademia androida Pierwsze kroki w Androidzie część I

akademia androida Pierwsze kroki w Androidzie część I akademia androida Pierwsze kroki w Androidzie część I agenda Środowisko do pracy + emulator Struktura projektu z omówieniem Po co nam AndroidManifest.xml? Cykl życia aplikacji Zadanie 1. Kod, symulacja,

Bardziej szczegółowo

Systemy operacyjne na platformach mobilnych

Systemy operacyjne na platformach mobilnych Systemy operacyjne na platformach mobilnych Wykład 1 Grzegorz Jabłoński, Piotr Perek Katedra Mikroelektroniki i Technik Informatycznych Zagadnienia wykładu Wprowadzenie do systemów mobilnych System operacyjny

Bardziej szczegółowo

Laboratorium Systemów Mobilnych. Wykład 1

Laboratorium Systemów Mobilnych. Wykład 1 Laboratorium Systemów Mobilnych 2015-02-27 Wykład 1 (Wstęp do programowania w systemie Android) Wojciech Wawrzyniak Zaliczenie wykładu i ćwiczeń Wykład omówienie zagadnień Ćwiczenie praktyczne zastosowanie

Bardziej szczegółowo

Systemy operacyjne na platformach mobilnych

Systemy operacyjne na platformach mobilnych Systemy operacyjne na platformach mobilnych Wykład 1 Grzegorz Jabłoński, Piotr Perek Katedra Mikroelektroniki i Technik Informatycznych Zagadnienia wykładu Wprowadzenie do systemów mobilnych System operacyjny

Bardziej szczegółowo

Android, wprowadzenie do SDK

Android, wprowadzenie do SDK Android, wprowadzenie do SDK Wprowadzenie, konfguracja środowiska, narzędzia, pierwsze aplikacje. prowadzący: Piotr Szymański, student 3 roku informatyki Paweł Rejkowicz, student 1 roku Informatyki 1 Android

Bardziej szczegółowo

Programowanie urządzeń mobilnych. dr inż. Juliusz Mikoda

Programowanie urządzeń mobilnych. dr inż. Juliusz Mikoda Programowanie urządzeń mobilnych dr inż. Juliusz Mikoda Instalacja środowiska 1 Wymagane składniki środowiska Eclipse wersja 3.4 (Ganymede) lub 3.5 (Galileo classic) http://www.eclipse.org/downloads/packages/release/galileo/r

Bardziej szczegółowo

Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz

Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz Życie aktywności Nawigując przez aplikacje poszczególne Aktywności przechodzą pomiędzy stanami. Dla przykładu gdy aktywność uruchamia się po raz pierwszy najpierw znajduje się w tle systemu gdzie otrzymuje

Bardziej szczegółowo

Programowanie Urządzeń Mobilnych. Część II: Android. Wykład 2

Programowanie Urządzeń Mobilnych. Część II: Android. Wykład 2 Programowanie Urządzeń Mobilnych Część II: Android Wykład 2 1 Aplikacje w systemie Android Aplikacje tworzone są w języku Java: Skompilowane pliki programów ( dex ) wraz z plikami danych umieszczane w

Bardziej szczegółowo

[Android] Podstawy programowania

[Android] Podstawy programowania Page 1 of 7 [Android] Podstawy programowania LinkiPrzewodnik z przykładamizasosbykrótka prezentacja wprowadzająca do budowy systemuprosta aplikacja z menu i dialogami, którą utworzymy tutaj krok po kroku

Bardziej szczegółowo

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8

Programowanie Urządzeń Mobilnych. Laboratorium nr 7, 8 Programowanie Urządzeń Mobilnych Laboratorium nr 7, 8 Android Temat 1 tworzenie i uruchamianie aplikacji z użyciem Android SDK Krzysztof Bruniecki 1 Wstęp Platforma Android jest opartym na Linuxie systemem

Bardziej szczegółowo

Obsługa SMS i telefonii

Obsługa SMS i telefonii Strona 1 Interfejsy API telefonii Wysyłanie wiadomości SMS Odbieranie wiadomości SMS Symulowanie nadchodzących wiadomości SMS Obsługa skrzynki wiadomości SMS Wysyłanie wiadomości e-mail Monitorowanie połączeń

Bardziej szczegółowo

Programowanie urządzeń mobilnych w systemie Android. Ćwiczenie 7 Wykorzystanie układu LinearLayout

Programowanie urządzeń mobilnych w systemie Android. Ćwiczenie 7 Wykorzystanie układu LinearLayout Ćwiczenie 7 Wykorzystanie układu LinearLayout Cel ćwiczenia Celem ćwiczenia jest praktyczne zapoznanie się z zasadami użycia układu graficznego LinearLayout oraz wykształcenie umiejętności zastosowania

Bardziej szczegółowo

Systemy operacyjne na platformach mobilnych 3 Wstęp do systemu Android

Systemy operacyjne na platformach mobilnych 3 Wstęp do systemu Android Systemy operacyjne na platformach mobilnych 3 Wstęp do systemu Android Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka

Bardziej szczegółowo

Android - wprowadzenie. Łukasz Przywarty 171018

Android - wprowadzenie. Łukasz Przywarty 171018 Android - wprowadzenie Łukasz Przywarty 171018 Ramowy plan prezentacji Czym jest Android: definicja, krótka historia. Architektura systemu. Architektura aplikacji. Właściwości systemu. Środowisko deweloperskie.

Bardziej szczegółowo

SOP System Obsługi Parkingów

SOP System Obsługi Parkingów SOP System Obsługi Parkingów JEE i Android Marcin Tatjewski Tomasz Traczyk Grzegorz Zieliński Paweł Borycki 5 listopada 2009 www.sopark.pl Plan prezentacji Java Platform, Enterprise Edition (JEE) Wstęp

Bardziej szczegółowo

Mobilne aplikacje multimedialne

Mobilne aplikacje multimedialne Mobilne aplikacje multimedialne Laboratorium 1 Wyznaczanie orientacji urządzenia względem lokalnego układu odniesienia autor: Krzysztof Bruniecki Gdańsk, 2013-10-08 wersja 12 Wprowadzenie Platforma Android

Bardziej szczegółowo

Systemy operacyjne na platformach mobilnych

Systemy operacyjne na platformach mobilnych Systemy operacyjne na platformach mobilnych Wykład 3 Grzegorz Jabłoński, Piotr Perek Katedra Mikroelektroniki i Technik Informatycznych Zagadnienia wykładu Menu opcji ListActivity własny widok własny adapter

Bardziej szczegółowo

Wsparcie dla różnych urządzeń. SDK pozwala przystosować aplikację do większości tych wypadków

Wsparcie dla różnych urządzeń. SDK pozwala przystosować aplikację do większości tych wypadków Wsparcie dla różnych urządzeń Android występuje obecnie w całej gamie różnych urządzeń. Urządzenia te różnią się: wielkością ekranu, gęstością pikseli, hardware'em, wspieranym sdk Dodatkowo urządzenia

Bardziej szczegółowo

Technologie internetowe w programowaniu.

Technologie internetowe w programowaniu. Technologie internetowe w programowaniu. Android 101 dr Tomasz Jach Instytut Informatyki, Uniwersytet Śląski http://myphonedeals.co.uk/blog/33-the-smartphone-os-complete-comparison-chart www.techradar.com/news/phone-and-communications/mobile-phones/ios7-vs-android-jelly-bean-vs-windows-phone-8-vs-bb10-1159893

Bardziej szczegółowo

Programowanie urządzeń mobilnych. dr inż. Andrzej Grosser na podstawie wykładu dr inż. Juliusza Mikody

Programowanie urządzeń mobilnych. dr inż. Andrzej Grosser na podstawie wykładu dr inż. Juliusza Mikody Programowanie urządzeń mobilnych dr inż. Andrzej Grosser na podstawie wykładu dr inż. Juliusza Mikody Wprowadzenie Android 1.0 (API level 1) - 2008 Android 1.5 Cupcake (API level 3) - 2009 Android 2.0

Bardziej szczegółowo

Programowanie urządzeń mobilnych w systemie Android

Programowanie urządzeń mobilnych w systemie Android Materiały dydaktyczne w ramach projektu Programowanie urządzeń mobilnych w systemie Android Zagadnienia podstawowe dr inż. Robert Arsoba Robert.Arsoba@ie.tu.koszalin.pl Koszalin 2011 Wersja 1.0 Tematyka

Bardziej szczegółowo

Android. Podstawy tworzenia aplikacji. Piotr Fulma«ski. March 4, 2015

Android. Podstawy tworzenia aplikacji. Piotr Fulma«ski. March 4, 2015 Android Podstawy tworzenia aplikacji Piotr Fulma«ski Instytut Nauk Ekonomicznych i Informatyki, Pa«stwowa Wy»sza Szkoªa Zawodowa w Pªocku, Polska March 4, 2015 Table of contents Framework Jednym z najwarto±ciowszych

Bardziej szczegółowo

akademia androida Service, BroadcastReceiver, ContentProvider część IV

akademia androida Service, BroadcastReceiver, ContentProvider część IV akademia androida Service, BroadcastReceiver, ContentProvider część IV agenda 1. BroadcastReceiver 2. Service 3. ContentProvider 4. Zadanie 1. 5. Zadanie 2 (domowe). 1. BroadcastReceiver BroadcastReceiver

Bardziej szczegółowo

Wprowadzenie do systemu Android

Wprowadzenie do systemu Android Wprowadzenie do systemu Android http://myphonedeals.co.uk/blog/33-the-smartphone-os-complete-comparison-chart www.techradar.com/news/phone-and-communications/mobile-phones/ios7-vs-android-jelly-bean-vs-windows-phone-8-vs-bb10-1159893

Bardziej szczegółowo

Java jako język programowania

Java jako język programowania Java jako język programowania Interpretowany programy wykonują się na wirtualnej maszynie (JVM Java Virtual Machine) Składnia oparta o język C++ W pełni zorientowany obiektowo (wszystko jest obiektem)

Bardziej szczegółowo

Programowanie obiektowe zastosowanie języka Java SE

Programowanie obiektowe zastosowanie języka Java SE Programowanie obiektowe zastosowanie języka Java SE Wstęp do programowania obiektowego w Javie Autor: dr inŝ. 1 Java? Java język programowania obiektowo zorientowany wysokiego poziomu platforma Javy z

Bardziej szczegółowo

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Lemay, Naughton R. Cadenhead Java Podręcznik 2 dla kaŝdego Języka Programowania Java Linki Krzysztof Boone oprogramowania

Bardziej szczegółowo

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod:

Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod: 1. Listener dla przycisku. Ciekawym rozwiązaniem służącym do obsługi zdarzeń dla kilku przycisków w ramach jednej aktywności może być następujący kod: W linii 24 tworzymy globalną metodę mglobal_onclicklistener,

Bardziej szczegółowo

Powiadomienia w systemie Android

Powiadomienia w systemie Android Powiadomienia w systemie Android Powiadomienie to krótka wiadomość, która pozwala informować użytkownika o pewnych wydarzeniach pochodzących z aplikacji - będąc poza nią. Wykorzystane w odpowiedni sposób

Bardziej szczegółowo

Laboratorium Systemów Mobilnych. Wykład 2

Laboratorium Systemów Mobilnych. Wykład 2 Laboratorium Systemów Mobilnych 2015-03-06 Wykład 2 (Aktywności proste zapamiętywanie danych) Wojciech Wawrzyniak Przypomnienie (elementy aplikacji) Składniki aplikacji Aktywności (Activity) Widoki (Views)

Bardziej szczegółowo

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java: otwórz okienko. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java: otwórz okienko Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak PLAN WYKŁADU klasy wewnętrzne, lokalne i anonimowe biblioteka AWT zestaw Swing JFrame JPanel komponenty obsługa zdarzeń

Bardziej szczegółowo

Politechnika Poznańska, Instytut Informatyki, TWO/GE. Programowanie dla ios

Politechnika Poznańska, Instytut Informatyki, TWO/GE. Programowanie dla ios Politechnika Poznańska, Instytut Informatyki, TWO/GE Programowanie dla ios 13 stycznia 2012 Urządzenia ios Urządzenie Data prezentacji iphone 9.01.2007/06.2007 ipod touch 5.09.2007 iphone 3G 9.06.2008

Bardziej szczegółowo

Fragmenty są wspierane od Androida 1.6

Fragmenty są wspierane od Androida 1.6 W androidzie można tworzyć dynamiczne interfejsy poprzez łączenie w moduły komponentów UI z aktywnościami. Moduły takie tworzy się za pomocą klasy Fragment, która zachowuje się jak zagnieżdżone aktywności

Bardziej szczegółowo

Android poradnik programisty

Android poradnik programisty Android poradnik programisty 93 PRZEPISY TWORZENIA DOBRYCH APLIKACJI Wei-Meng Lee APN Promise SA Spis treści Wprowadzenie.......................................................... xi 1 Podstawy systemu

Bardziej szczegółowo

Instalujemy środowisko. Hello World! Odczyt/zapis informacji do komponentów na formie. onclick()

Instalujemy środowisko. Hello World! Odczyt/zapis informacji do komponentów na formie. onclick() Instalujemy środowisko. Hello World! Odczyt/zapis informacji do komponentów na formie. onclick() Co nam będzie potrzebne? 1. Java Platform Development Kit (JDK) bez NetBeansa w wersji zgodnej z Android

Bardziej szczegółowo

Tworzenie aplikacji na platformie Android

Tworzenie aplikacji na platformie Android Kod szkolenia: Tytuł szkolenia: ANDROID/APL Tworzenie aplikacji na platformie Android Dni: 5 Opis: Adresaci Szkolenia Szkolenie adresowane jest do programistów znających już Javę i jej kluczowe koncepcje,

Bardziej szczegółowo

Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski

Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski Tworzenie natywnych aplikacji na urządzenia mobilne - PhoneGap Tomasz Margalski Agenda Dlaczego PhoneGap i co to jest? Możliwości PhoneGap Jak pisać aplikacje z PhoneGap? Konfiguracja i przykład aplikacji

Bardziej szczegółowo

Programowanie Urządzeń Mobilnych. Laboratorium nr 9,10

Programowanie Urządzeń Mobilnych. Laboratorium nr 9,10 Programowanie Urządzeń Mobilnych Laboratorium nr 9,10 Android Temat 2 działanie złożonych aplikacji zawierających więcej niż jedno Activity Krzysztof Bruniecki 1 Wstęp Podczas laboratorium poruszona zostanie

Bardziej szczegółowo

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU. studia pierwszego stopnia

PROJEKT WSPÓŁFINANSOWANY ZE ŚRODKÓW UNII EUROPEJSKIEJ W RAMACH EUROPEJSKIEGO FUNDUSZU SPOŁECZNEGO OPIS PRZEDMIOTU. studia pierwszego stopnia OPIS PRZEDMIOTU Nazwa przedmiotu Programowanie i obsługa systemów mobilnych Kod przedmiotu Wydział Instytut/Katedra Kierunek Specjalizacja/specjalność Wydział Matematyki, Fizyki i Techniki Instytut Mechaniki

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć

Bardziej szczegółowo

ANDROID. OpenGL ES 1.0. Tomasz Dzieniak

ANDROID. OpenGL ES 1.0. Tomasz Dzieniak ANDROID OpenGL ES 1.0 Tomasz Dzieniak Wymagania JRE & JDK 5.0 + IDE (Eclipse 3.3.1 + / Netbeans 7.0.0 +) Android SDK Starter Package Android SDK Components Pierwszy program Project name: OpenGL Build Target:

Bardziej szczegółowo

Pakiety i interfejsy. Tomasz Borzyszkowski

Pakiety i interfejsy. Tomasz Borzyszkowski Pakiety i interfejsy Tomasz Borzyszkowski Pakiety podstawy W dotychczasowych przykładach nazwy klas musiały pochodzić z jednej przestrzeni nazw, tj. być niepowtarzalne tak, by nie doprowadzić do kolizji

Bardziej szczegółowo

Programowanie w Internecie. Java

Programowanie w Internecie. Java Programowanie w Internecie Java Autor: dr inż. Zofia Kruczkiewicz Literatura: L. Lemay, R. Cadenhead P. Naughton Krzysztof Barteczko Boone Barry Java 2 dla każdego Podręcznik Języka Programowania Java

Bardziej szczegółowo

Google Android. Opracował Maciej Ciurlik

Google Android. Opracował Maciej Ciurlik Google Android Opracował Maciej Ciurlik Plan prezentacji Wprowadzenie Architektura Cykl życia aplikacji Wprowadzenie Android - kompletny zbiór oprogramiwania dla urządzeń mobilnych. System operacyjny Middleware

Bardziej szczegółowo

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 2, część 1 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa w klasie! 2 Język

Bardziej szczegółowo

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji. JAVA Java jest wszechstronnym językiem programowania, zorientowanym obiektowo, dostarczającym możliwość uruchamiania apletów oraz samodzielnych aplikacji. Java nie jest typowym kompilatorem. Źródłowy kod

Bardziej szczegółowo

Agenda. Wprowadzenie do Androida

Agenda. Wprowadzenie do Androida Android WYKŁAD 1 Agenda Wprowadzenie do Androida Czym jest android Czy warto się nim interesować? Jak zbudowany jest android Dalvik i ART maszyny wirtualne Android API Narzędzia Android Studio Wprowadzenie

Bardziej szczegółowo

Tworzenie i wykorzystanie usług

Tworzenie i wykorzystanie usług Strona 1 Co to jest usługa w systemie Android? Usługi HTTP Obsługa wywołania HTTP GET Obsługa wywołania HTTP POST Obsługa wieloczęściowego wywołania HTTP POST Usługi lokalne Usługi zdalne Tworzenie usługi

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Literatura: Autor: dr inŝ. Zofia Kruczkiewicz Java P. L. Krzysztof Lemay, Naughton Barteczko R. Cadenhead JAVA, Java Podręcznik 2 wykłady dla kaŝdego Języka i ćwiczenia Programowania

Bardziej szczegółowo

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa 1 Java Wprowadzenie 2 Czym jest Java? Język programowania prosty zorientowany obiektowo rozproszony interpretowany wydajny Platforma bezpieczny wielowątkowy przenaszalny dynamiczny Rozumiana jako środowisko

Bardziej szczegółowo

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu. Dr inż. Zofia Kruczkiewicz Dwa sposoby tworzenia apletów Dwa sposoby

Bardziej szczegółowo

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe Architektury Usług Internetowych Laboratorium 2. Usługi sieciowe Wstęp Celem laboratorium jest zapoznanie się z modelem usług sieciowych na przykładzie prostego serwera Apache Axis2. Apache Axis2 Apache

Bardziej szczegółowo

Analiza i projektowanie aplikacji Java

Analiza i projektowanie aplikacji Java Analiza i projektowanie aplikacji Java Modele analityczne a projektowe Modele analityczne (konceptualne) pokazują dziedzinę problemu. Modele projektowe (fizyczne) pokazują system informatyczny. Utrzymanie

Bardziej szczegółowo

Android tworzenie aplikacji mobilnych

Android tworzenie aplikacji mobilnych Android tworzenie aplikacji mobilnych Charakterystyka Szkolenie ma na celu zaznajomienie słuchaczy z tworzeniem aplikacji działających na systemie operacyjnym Android z naciskiem na przedstawienie zaawansowanych

Bardziej szczegółowo

Multimedia JAVA. Historia

Multimedia JAVA. Historia Multimedia JAVA mgr inż. Piotr Odya piotrod@sound.eti.pg.gda.pl Historia 1990 rozpoczęcie prac nad nowym systemem operacyjnym w firmie SUN, do jego tworzenia postanowiono wykorzystać nowy język programowania

Bardziej szczegółowo

Zaawansowane aplikacje WWW - laboratorium

Zaawansowane aplikacje WWW - laboratorium Zaawansowane aplikacje WWW - laboratorium Przetwarzanie XML (część 2) Celem ćwiczenia jest przygotowanie aplikacji, która umożliwi odczyt i przetwarzanie pliku z zawartością XML. Aplikacja, napisana w

Bardziej szczegółowo

Lista wprowadzonych zmian w systemie Vario v. 3.3 od wydania 3.003.60177.00403 do wydania 3.003.60180.00419

Lista wprowadzonych zmian w systemie Vario v. 3.3 od wydania 3.003.60177.00403 do wydania 3.003.60180.00419 Lista wprowadzonych zmian w systemie Vario v. 3.3 od wydania 3.003.60177.00403 do wydania 3.003.60180.00419 LP Vario* Wersja Zmiany 1. BPM 3.003.60177.00403 Ulepszenie działania pola przeznaczonego do

Bardziej szczegółowo

Wykorzystanie map i geolokalizacji

Wykorzystanie map i geolokalizacji Strona 1 Usługi oparte na położeniu geograficznym Generowanie klucza interfejsu API dla mapy Wyświetlanie mapy Dodawanie własnych danych do mapy Położenie geograficzne Klasa Geocoder i geokodowanie Geokodowanie

Bardziej szczegółowo

akademia androida Składowanie danych część VI

akademia androida Składowanie danych część VI akademia androida Składowanie danych część VI agenda 1. SharedPreferences. 2. Pamięć wewnętrzna i karta SD. 3. Pliki w katalogach /res/raw i /res/xml. 4. Baza danych SQLite. 5. Zadanie. 1. SharedPreferences.

Bardziej szczegółowo

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z

Bardziej szczegółowo

akademia androida Sensory część V Mobile Applications Developers www.mad.zut.edu.pl

akademia androida Sensory część V Mobile Applications Developers www.mad.zut.edu.pl akademia androida Sensory część V agenda 1. O sensorach słów kilka 2. Sensor Framework 3. Akcelerometr 4. Czujnik zbliżeniowy 5. Czujnik światła 6. Zadanie 1. 7. Zadanie 2 (domowe) 1. O sensorach słów

Bardziej szczegółowo

Architektura systemu. Środowisko programistyczne. Emulator systemu Android. Przegląd podstawowych pojęć. Pierwszy program.

Architektura systemu. Środowisko programistyczne. Emulator systemu Android. Przegląd podstawowych pojęć. Pierwszy program. WSTĘP DO PROGRAMOWANIA APLIKACJI MOBILNYCH DLA SYSTEMU ANDROID Architektura systemu. Środowisko programistyczne. Emulator systemu Android. Przegląd podstawowych pojęć. Pierwszy program. Wykorzystane materiały:

Bardziej szczegółowo

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First)

Microsoft.NET: ASP.NET MVC + Entity Framework (Code First) Microsoft.NET: ASP.NET MVC + Entity Framework (Code First) Do realizacji projektu potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2012. W ramach projektu budowana jest prosta

Bardziej szczegółowo

Laboratorium 8 ( Android -pierwsza aplikacja)

Laboratorium 8 ( Android -pierwsza aplikacja) Dr Mirosław Łątka Informatyka dla medycyny Jesień 2012 Laboratorium 8 ( Android -pierwsza aplikacja) Naszym celem jest stworzenie aplikacji, która wyświetla zdjęcie Alberta Einsteina. Jeden z przycisków

Bardziej szczegółowo

Język JAVA podstawy. wykład 2, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 2, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 2, część 2 Jacek Rumiński 1 Język JAVA podstawy Plan wykładu: 1. Rodzaje programów w Javie 2. Tworzenie aplikacji 3. Tworzenie apletów 4. Obsługa archiwów 5. Wyjątki 6. Klasa

Bardziej szczegółowo

ZAPOZNANIE SIĘ Z TWORZENIEM

ZAPOZNANIE SIĘ Z TWORZENIEM LABORATORIUM SYSTEMÓW MOBILNYCH ZAPOZNANIE SIĘ Z TWORZENIEM APLIKACJI MOBILNEJ W J2ME I. Temat ćwiczenia II. Wymagania Podstawowe wiadomości z zakresu języka Java Podstawowa znajomość środowiska Eclipse

Bardziej szczegółowo

Android. Zarz dzanie cyklem»ycia i stanem. Piotr Fulma«ski. March 10, 2015

Android. Zarz dzanie cyklem»ycia i stanem. Piotr Fulma«ski. March 10, 2015 Android Zarz dzanie cyklem»ycia i stanem Piotr Fulma«ski Instytut Nauk Ekonomicznych i Informatyki, Pa«stwowa Wy»sza Szkoªa Zawodowa w Pªocku, Polska March 10, 2015 Table of contents Co w tym wykªadzie

Bardziej szczegółowo

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44

D:\DYDAKTYKA\ZAI_BIS\_Ćwiczenia_wzorce\04\04_poprawiony.doc 2009-lis-23, 17:44 Zaawansowane aplikacje internetowe EJB 1 Rozróżniamy dwa rodzaje beanów sesyjnych: Stateless Statefull Celem tego laboratorium jest zbadanie różnic funkcjonalnych tych dwóch rodzajów beanów. Poszczególne

Bardziej szczegółowo

Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka

Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka Javadoc Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka Wprowadzenie do Javadoc Treść prezentacji: http://students.mimuw.edu.pl/~as219669/javadoc.pdf Zadania: http://students.mimuw.edu.pl/~as219669/zadanie.rar

Bardziej szczegółowo

Programowanie usług działających w tle

Programowanie usług działających w tle Programowanie usług działających w tle Android Paweł Szafer Po co programować usługi działające w tle? Plan prezentacji O aplikacjach w Androidzie, Sposób podejmowania decyzji o zabiciu procesu, Rodzaje

Bardziej szczegółowo

Testowanie aplikacji mobilnych z ukierunkowaniem na system Android

Testowanie aplikacji mobilnych z ukierunkowaniem na system Android Testowanie aplikacji mobilnych z ukierunkowaniem na system Android Trener Łukasz Złocki Absolwent informatyki UŚ Tester i programista Certyfikat ISTQB Foundation W branży IT od 2003 roku W testowaniu od

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Programowanie obiektowe Wykład 7 Marcin Młotkowski 8 kwietnia 2015 Plan wykładu Z życia programisty, część 1 1 Z życia programisty, część 1 2 3 Z życia programisty, część 2 Model View Controller MVC w

Bardziej szczegółowo

Aplikacje mobilne. Pliki zasobów, grafiki, menu, podpinanie zdarzeń. dr Tomasz Jach Instytut Informatyki, Uniwersytet Śląski

Aplikacje mobilne. Pliki zasobów, grafiki, menu, podpinanie zdarzeń. dr Tomasz Jach Instytut Informatyki, Uniwersytet Śląski Aplikacje mobilne Pliki zasobów, grafiki, menu, podpinanie zdarzeń dr Tomasz Jach Instytut Informatyki, Uniwersytet Śląski Pliki zasobów Jak już robiliśmy wcześniej sporo rzeczy w Androidzie umieszczamy

Bardziej szczegółowo

Laboratorium 9 (Więcej Aktywności, w Androidzie)

Laboratorium 9 (Więcej Aktywności, w Androidzie) Dr Mirosław Łątka Informatyka dla medycyny Jesień 2012 Laboratorium 9 (Więcej Aktywności, w Androidzie) Aplikacje systemu Android składają się z luźnego zbioru aktywności (ang. activities), z których każda

Bardziej szczegółowo

WPAM. W5 Android bardzo krótkie wprowadzenie. Piotr Gawrysiak. pgawrysiak@supermedia.pl

WPAM. W5 Android bardzo krótkie wprowadzenie. Piotr Gawrysiak. pgawrysiak@supermedia.pl WPAM W5 Android bardzo krótkie wprowadzenie C-BY-SA Piotr Gawrysiak Piotr Gawrysiak pgawrysiak@supermedia.pl Politechnika Warszawska Instytut Informatyki Zakład Systemów Informacyjnych 2012 Dlaczego Android?

Bardziej szczegółowo

Zaawansowane aplikacje internetowe - laboratorium

Zaawansowane aplikacje internetowe - laboratorium Zaawansowane aplikacje internetowe - laboratorium Web Services (część 3). Do wykonania ćwiczeń potrzebne jest zintegrowane środowisko programistyczne Microsoft Visual Studio 2005. Ponadto wymagany jest

Bardziej szczegółowo

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 2

Podstawy tworzenia aplikacji z wykorzystaniem języka Java ME ćwiczenia 2 z wykorzystaniem języka Java ME ćwiczenia 2 Wykorzystanie plików graficznych w MIDlet ach utworzenie obiektu klasy Image (statyczna metoda createimage()) utworzenie obiektu klasy ImageItem dodanie utworzonego

Bardziej szczegółowo

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna Język JAVA podstawy wykład 1, część 2 1 Język JAVA podstawy Plan wykładu: 1. Krótka historia Javy 2. Jak przygotować sobie środowisko programistyczne 3. Opis środowiska JDK 4. Tworzenie programu krok po

Bardziej szczegółowo

Delphi podstawy programowania. Środowisko Delphi

Delphi podstawy programowania. Środowisko Delphi Delphi podstawy programowania Środowisko Delphi Olsztyn 2004 Delphi Programowanie obiektowe - (object-oriented programming) jest to metodologia tworzeniu programów komputerowych definiująca je jako zbiór

Bardziej szczegółowo

Programowanie Obiektowe GUI

Programowanie Obiektowe GUI Programowanie Obiektowe GUI Swing Celem ćwiczenia jest ilustracja wizualnego tworzenia graficznego interfejsu użytkownika opartego o bibliotekę Swing w środowisku NetBeans. Ponadto, ćwiczenie ma na celu

Bardziej szczegółowo

Programowanie w Javie

Programowanie w Javie Programowanie w Javie Andrzej Czajkowski Lista nr 0 Debugger w Javie Celem ćwiczenia jest poznanie podstawowych funkcji narzędzia debugera (odpluskwiacz) w środowisku Eclipse. Po ukończeniu ćwiczenia student

Bardziej szczegółowo

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie

Bardziej szczegółowo

Podstawowe elementy GUI cz. 2 i 3 - zadania

Podstawowe elementy GUI cz. 2 i 3 - zadania Podstawowe elementy GUI cz. 2 i 3 - zadania Jak już robiliśmy wcześniej sporo rzeczy w Androidzie umieszczamy w plikach xml (np. strings.xml). Jest to dobra praktyka, w plikach zasobów możemy umieszczać

Bardziej szczegółowo

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej Programowanie obiektowe Interfejsy Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej pawel.rogalinski pwr.wroc.pl Interfejsy Autor: Paweł Rogaliński Instytut Informatyki,

Bardziej szczegółowo

WPROWADZENIE DO JĘZYKA JAVA

WPROWADZENIE DO JĘZYKA JAVA Naszym mózgom. Za to, że zawsze są na swoim miejscu. W mniejszym lub większym stopniu WPROWADZENIE DO JĘZYKA JAVA podstawowe informacje: zarys historii, zasadnicze cechy i pojęcia Javy, wirtualna maszyna

Bardziej szczegółowo

Grafika trójwymiarowa

Grafika trójwymiarowa Strona 1 Grafika 3D w systemie Android Wprowadzenie do OpenGL ES Podstawy rysowania Rzutowanie i kamera Klasa GLSurfaceView Algorytm rysowania Tekstury Strona 2 Grafika 3D w systemie Android W komputerach,

Bardziej szczegółowo

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak Java język programowania obiektowego Programowanie w językach wysokiego poziomu mgr inż. Anna Wawszczak 1 Język Java Język Java powstał w roku 1995 w firmie SUN Microsystems Java jest językiem: wysokiego

Bardziej szczegółowo

PODRĘCZ NIKI. Android i ios tworzenie aplikacji mobilnych. Edyta Łukasik Maria Skublewska-Paszkowska Jakub Smołka. Lublin 2014

PODRĘCZ NIKI. Android i ios tworzenie aplikacji mobilnych. Edyta Łukasik Maria Skublewska-Paszkowska Jakub Smołka. Lublin 2014 Edyta Łukasik Maria Skublewska-Paszkowska Jakub Smołka Android i ios tworzenie aplikacji mobilnych Lublin 2014 PODRĘCZ NIKI Android i ios tworzenie aplikacji mobilnych Podręczniki Politechnika Lubelska

Bardziej szczegółowo

Automatyczne testowanie aplikacji Android

Automatyczne testowanie aplikacji Android Automatyczne testowanie aplikacji Android Arkadiusz Konior! 4developers!! Warszawa 7 kwietnia 2014 Agenda Testowanie Android Testing Framework Robotium Espresso monkey monkeyrunner UIAutomator Robolectric

Bardziej szczegółowo

Koncepcja systemu informatycznego realizującego w środowisku Oracle Spatial proces generalizacji modelu BDOT10 do postaci BDOT50

Koncepcja systemu informatycznego realizującego w środowisku Oracle Spatial proces generalizacji modelu BDOT10 do postaci BDOT50 Koncepcja systemu informatycznego realizującego w środowisku Oracle Spatial proces generalizacji modelu BDOT10 do postaci BDOT50 Architektura systemu Architektura systemu System udostępnia dwa kanały dostępu,

Bardziej szczegółowo

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem.

WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM. NetBeans. Wykonał: Jacek Ventzke informatyka sem. WYKONANIE APLIKACJI OKIENKOWEJ OBLICZAJĄCEJ SUMĘ DWÓCH LICZB W ŚRODOWISKU PROGRAMISTYCZNYM NetBeans Wykonał: Jacek Ventzke informatyka sem. VI 1. Uruchamiamy program NetBeans (tu wersja 6.8 ) 2. Tworzymy

Bardziej szczegółowo

Agenda. Implicit intents Wyświetlanie obrazków Menu Ikona aplikacji Praca z kolekcjami i ListView Własny widok

Agenda. Implicit intents Wyświetlanie obrazków Menu Ikona aplikacji Praca z kolekcjami i ListView Własny widok Android WYKŁAD 3 Agenda Implicit intents Wyświetlanie obrazków Menu Ikona aplikacji Praca z kolekcjami i ListView Własny widok Implicit intents włącz przeglądarkę www wywołanie intencji "na ślepo" Implicit

Bardziej szczegółowo

Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia

Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia Utworzenie aplikacji mobilnej Po uruchomieniu Visual Studio pokazuje się ekran powitalny. Po lewej stronie odnośniki do otworzenia lub stworzenia nowego projektu (poniżej są utworzone projekty) Po kliknięciu

Bardziej szczegółowo

1 Wprowadzenie do J2EE

1 Wprowadzenie do J2EE Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2

Bardziej szczegółowo

Java Platform Micro Edition

Java Platform Micro Edition Java Platform Micro Edition Instalacja środowiska programistycznego Java Platform Micro Edition Software Development Kit 3.0 for Windows z lokalizacji http://www.oracle.com/technetwork/java/javame/downloads/sdk30-jsp-139759.html

Bardziej szczegółowo

xmlns:prism=http://www.codeplex.com/prism c.

xmlns:prism=http://www.codeplex.com/prism c. <ContentControl prism:regionmanager.regionname=mainregion /> 1 Tworzenie Shella a. W pierwszej kolejności tworzymy nowy projekt: WPF Application. Name: Shell SolutionName: PrismApp b. Dodajemy bibliotekę PRISM za pomocą NuGet Managera (dla.net Framework 4.5 Prism

Bardziej szczegółowo

Rozdział 4 KLASY, OBIEKTY, METODY

Rozdział 4 KLASY, OBIEKTY, METODY Rozdział 4 KLASY, OBIEKTY, METODY Java jest językiem w pełni zorientowanym obiektowo. Wszystkie elementy opisujące dane, za wyjątkiem zmiennych prostych są obiektami. Sam program też jest obiektem pewnej

Bardziej szczegółowo

Programowanie aplikacji dla Sklepu Windows w języku C#

Programowanie aplikacji dla Sklepu Windows w języku C# Programowanie aplikacji dla Sklepu Windows w języku C# Matt Baxter-Reynolds i Iris Classon przekład: Natalia Chounlamany Krzysztof Kapustka APN Promise Warszawa 2014 Spis treści Przedmowa...........................................................

Bardziej szczegółowo

WPROWADZENIE DO JĘZYKA JAVA

WPROWADZENIE DO JĘZYKA JAVA WPROWADZENIE DO JĘZYKA JAVA programowanie obiektowe KRÓTKA HISTORIA JĘZYKA JAVA KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny języka java. Pierwsza nazwa Oak (dąb). KRÓTKA HISTORIA JĘZYKA JAVA 1991 - narodziny

Bardziej szczegółowo

Programowanie na poziomie sprzętu. Programowanie w Windows API

Programowanie na poziomie sprzętu. Programowanie w Windows API Programowanie w Windows API Windows API Windows Application Programming Interface (API) to zestaw funkcji systemu operacyjnego Windows, które umożliwiają aplikacjom korzystanie z wszystkich usług systemu.

Bardziej szczegółowo