akademia androida Intencje oraz URI część III

Podobne dokumenty
dr Artur Bartoszewski dr Artur Bartoszewski - Aplikacje mobilne - Wykład

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:

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

akademia androida Składowanie danych część VI

Systemy operacyjne na platformach mobilnych

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

AndroidManifest.xml. Plik manifestu opisuje podstawowe charakterystyki aplikacji i definiuje jej komponenty.

Android, wprowadzenie do SDK

Powiadomienia w systemie Android

Obsługa SMS i telefonii

akademia androida Pierwsze kroki w Androidzie część I

Layouty. Kilka layoutów

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

3S TeleCloud - Aplikacje Instrukcja użytkowania usługi 3S SMS SYSTEM

Systemy operacyjne na platformach mobilnych

Tak przygotowane pliki należy umieścić w głównym folderze naszego programu. Klub IKS

Kurs walut. Specyfikacja projektu. Marek Zając

Instrukcja implementacji sterownika wirtualnego portu szeregowego dla systemu Android. Opracowanie: Elzab Soft sp. z o.o.

Programowanie aplikacji dla technologii mobilnych. mgr inż. Anton Smoliński

Połączenie aplikacji mobilnej z Facebookiem

Przykładowa dostępna aplikacja w Visual Studio - krok po kroku

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

Laboratorium 8 ( Android -pierwsza aplikacja)

TEMAT : KLASY DZIEDZICZENIE

Aplikacje WWW - laboratorium

Użytkowniku programu FINKA, przekazujemy E-book, który omawia najważniejsze kwestie dotyczące generowania i wysyłania JPK.

akademia androida Sensory część V Mobile Applications Developers

ROZDZIAŁ 1. PRZEGLĄD BRAMOFONU SAFE...

Część XVII C++ Funkcje. Funkcja bezargumentowa Najprostszym przypadkiem funkcji jest jej wersja bezargumentowa. Spójrzmy na przykład.

Nowe notowania epromak Professional

Laboratorium 1 - Programowanie proceduralne i obiektowe

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

Ćwiczenie 1. Kolejki IBM Message Queue (MQ)

Nowy sposób autoryzacji przelewów w Usłudze Bankowości Elektronicznej

Instrukcja obsługi. Helpdesk. Styczeń 2018

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

Moduł Handlowo-Magazynowy Przeprowadzanie inwentaryzacji z użyciem kolektorów danych

Wprowadzenie do projektu QualitySpy

Rozdział 4 KLASY, OBIEKTY, METODY

akademia androida Http i AsyncTask część VII

Programowanie urządzeń mobilnych

TAB9-200 XENTA 97ic 9.7 TABLET ANDROID JELLY BEAN - INSTRUKCJA AKTUALIZACJI

1. Które składowe klasa posiada zawsze, niezależnie od tego czy je zdefiniujemy, czy nie?

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

Aktywności są związane z ekranem i definiują jego wygląd. Dzieje się to poprzez podpięcie do aktywności odpowiedniego widoku.

Budowa aplikacji wielowarstwowych zastosowanie szablonów. Laboratorium 2 Programowanie komponentowe Zofia Kruczkiewicz

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

Podstawy i języki programowania

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

DOKUMENTACJA. dla użytkowników systemu i-łask. Rozwiązanie zostało przygotowane przez: TITUTO Sp. z o.o. ul. Zelwerowicza 52G Rzeszów

Minimalna wspierana wersja systemu Android to zalecana 4.0. Ta dokumentacja została wykonana na telefonie HUAWEI ASCEND P7 z Android 4.

GroupWise WebAccess Basic Interface

Programowanie obiektowe

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

Kleos Mobile Android

Instrukcja powiązania urządzenia mobilnego oraz autoryzacja operacji w bankowości elektronicznej Banku Spółdzielczego w Bieczu (Asseco CBP)

Instrukcja importu przesyłek. z Menedżera Sprzedaży do aplikacji Webklient

Mobilne aplikacje multimedialne

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

Zaawansowane aplikacje WWW - laboratorium

Nowe notowania epromak Professional

Instrukcja powiązania urządzenia mobilnego oraz autoryzacja operacji w bankowości elektronicznej Banku Spółdzielczego w Bieczu (Asseco CBP)

INSTRUKCJA obsługi certyfikatów

Programowanie obiektowe

Rozpoczęcie pracy z programem.

Instrukcja obsługi. Zewnętrzny panel videodomofonowy IP. Konfiguracja i obsługa aplikacji DMSS Plus.

Fragmenty są wspierane od Androida 1.6

Programowanie obiektowe

Wykład 8: klasy cz. 4

Fortis Weblo serwer strony www dekodera Fortis Sky Sat Royal

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Laboratorium 7 Blog: dodawanie i edycja wpisów

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

Bank Spółdzielczy w Nidzicy

Dodawanie operacji dodatkowych w WAPRO Mag.

Instrukcja pierwszego logowania do Mobilnego Banku. Strona 1

LokaleTel Szybki start

INSTRUKCJA OBSŁUGI SUPLEMENT

Informatyka II. Laboratorium Aplikacja okienkowa

trainxx tramxx

1. Proszę wejść na stronę: poczta.home.pl i zalogować się do nowej skrzynki za pomocą otrzymanych danych.

E-administracja. Korzystanie z Elektronicznej Platformy Usług Administracji Publicznej

Programowanie aplikacji mobilnych

PODRĘCZNIK OBSŁUGI BUSINESSNET

Android - Kontakty. Łukasz Dudzioski

Instrukcja uruchomienia i korzystania z mtoken Asseco MAA na urządzeniach mobilnych oraz powiązania z Asseco CBP

Ratownictwo Medyczne

BACKUP BAZ DANYCH FIREBIRD

TRUST AMI MOUSE WIRELESS 300

Instalacja i konfiguracja IIS-a na potrzeby dostępu WEBowego/Secure

Instrukcja obsługi aplikacji Karty Pojazdów dla Dealerów Samochodowych

Agenda. Activity cd Layouty Jednostki Dialogi LogCat Drugie Activity i Intents Serializacja Własne widoki Menu

Instrukcja uruchomienia i korzystania z mtoken Asseco MAA na urządzeniach mobilnych oraz powiązania z Asseco CBP

Podstawowe elementy GUI - zadania

Konwersje napis <-> liczba Struktury, unie Scanf / printf Wskaźniki

Instrukcja instalowania aplikacji TNS mobistat. Smartfon Android. Help Desk

Instrukcja instalacji programu STATISTICA

URZĄDZENIE DO BEZPRZEWODOWEGO STRUMIENIOWANIA MULTIMEDIÓW

Budowa aplikacji z graficznym interfejsem użytkownika - GUI (Graphic User Interface)

Instrukcja instalacji programu SPSS Statistics 21

Transkrypt:

akademia androida Intencje oraz URI część III

agenda 1. Czym są intencje i po co się ich używa? 2. Czym jest URI? 3. Zadanie 1. 4. Zadanie 2 (domowe).

1. Czym są intencje i po co się ich używa? Intencje są to wiadomości, które pozwalają aplikacji/komponentowi systemu Android żądać jakiejś funkcjonalności od innych aplikacji/komponentów. Przechowują one informację o akcji do wykonania. Inne komponenty mogą się podłączać do takich akcji poprzez filtry intencji o których później. Przykłady akcji zdefiniowanych w klasie Intent: Stała Cel Akcja ACTION_CALL aktywność Zainicjowanie rozmowy telefonicznej. ACTION_VIEW aktywność Wyświetlenie danych użytkownikowi. ACTION_BATTERY_LOW ACTION_HEADSET_PLUG ACTION_SCREEN_ON broadcast receiver broadcast receiver broadcast receiver Ostrzeżenie o niskim stanie baterii. Zestaw słuchawkowy został podłączony lub odłączony. Włączono ekran. Wyróżniamy trzy mechanizmy dostarczania intencji, aby uruchomić określone komponenty: do uruchamiania aktywności intencje przekazujemy do Context.startActivity() Activity.startActivityForResult() do uruchamiania usług do Context.startService() przekazywanie akcji do broadcast receiverów.

Rozróżniamy dwa typy intencji: jawne są to takie intencje, w których jawnie deklarujemy, który komponent ma wykonać akcję, np. Intent i = new Intent(this, DrugaAktywnosc.class); startactivity(i); niejawne w tego typu intencjach nie wskazujemy bezpośrednio obiektu, jedynie akcję, którą chcemy wykonać. Jeżeli nie mamy domyślnego komponentu, który np. otwiera strony WWW otworzy się dialog z pytaniem, której aplikacji chcemy użyć. System rozpoznaje komponenty, które są w stanie wykonać daną akcję na podstawie filtrów intencji. Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse("http://")); startactivity(i); Można również dodać dane do intencji, które odbierze wywoływany komponent. Przykładowo: Intent i = new Intent(this, DrugaAktywnosc.class); i.putextra("wiadomosc", "To jest wiadomosc do aktywnosci drugiej"); i.putextra("id", 12345); startactivity(i); W drugiej aktywności dane odbieramy poprzez pobranie intencji i wywołanie na niej stosownej metody w zależności od typu danych. Intent intent = getintent(); String message = intent.getstringextra("wiadomosc"); int id = intent.getintextra("id", 0);

Jeżeli chcemy otworzyć jakąś aktywność po to, żeby zwróciła nam jakieś dane, zamiast Context.startActivity() używamy Activity.startActivityForResult(). Intent intent = new Intent(this, DrugaAktywnosc.class); startactivityforresult(intent, SECOND_ACT_REQUEST); SECOND_ACT_REQUEST jest to dowolna stała całkowitoliczbowa, dzięki której będziemy wiedzieli skąd przyszła odpowiedź do naszej aktywności. private static final int SECOND_ACT_REQUEST = 1234; W drugiej aktywności konstruujemy odpowiedź poprzez stworzenie zwrotnej intencji z dowolnymi danymi: Intent resultintent = new Intent(); resultintent.putextra("odpowiedz", "Jakaś nasza odpowiedz"); setresult(result_ok, resultintent); Odpowiedź odbieramy poprzez nadpisaną w klasie Activity metodę onactivityresult(int requestcode, int resultcode, Intent data) requestcode - kod identyfikujący komponent, od którego otrzymaliśmy odpowiedź, resultcode zmienna całkowitoliczbowa, na podstawie której określamy czy żądana przez nas operacja została wykonana poprawnie ( Activity.RESULT_OK, Activity.RESULT_CANCELED), data dane, które otrzymaliśmy.

Przykład takiej metody: @Override protected void onactivityresult(int requestcode, int resultcode, Intent data) { if (SECOND_ACT_REQUEST == requestcode) { if (resultcode == RESULT_OK) { // wykonaj coś } } } 2. Czym jest URI? URI to dosłownie jednolity identyfikator zasobu, pozwala on na identyfikację zasobów. Określa on nazwę (URN) lub adres (URL) zasobu, który jest identyfikowany przez dane URI. W praktyce oznacza to tyle, że poza żądaniem dokumentów w sieci WWW (tak jak było to pokazane w przykładzie) można też żądać innych danych takich jak: nr. telefonów, lokalizację etc. Więcej na temat w następnej części kursu. Kilka przykładów poniżej: Adres e-mail URI pliku URI folderu URI lokalizacji Google Streetview Numer telefonu Adres WWW mailto: file:// folder:// directory:// geo: google.streetview: tel: http:// https:// Budowa URI na podstawie adresu WWW: Źródło : http://pl.wikipedia.org/wiki/uniform_resource_identifier

3. Zadanie 1. Pobierz zadanie domowe z poprzedniego spotkania. http:///akademia_androida/zadanie_2_dom.zip Dodaj przyciski wg poniższego zrzutu ekranu: Używając intencji zaprogramuj akcję dla każdego z przycisków wg jego nazwy. Przycisk Druga aktywność poza uruchomieniem drugiej aktywności powinien przekazywać do niej Twoje imię i nazwisko. W drugiej aktywności należy otrzymane dane wyświetlić w TextView. Przykład poniżej.

Uwaga! Pamiętaj o dopisaniu uprawnień do pliku AndroidManifest.xml. 4. Zadanie 2 (domowe). Stwórz aplikację, w której będą znajdować się dwie aktywności. W pierwszej dodaj przycisk Żądaj odpowiedzi oraz pole TextView. Przycisk Żądaj odpowiedzi powinien otworzyć drugą aktywność w celu odebrania od niej tekstu wpisanego do pola EditText. Poza polem EditText, druga aktywność powinna zawierać przycisk Odpowiedź, po naciśnięciu którego powrócimy do aktywności pierwszej, a w polu tekstowym wyświetli się podany przez nas napis.

Dziękuję za uwagę! Kontakt: sswierczek@wi.zut.edu.pl mad@zut.edu.pl