Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Android - wprowadzenie

Podobne prezentacje


Prezentacja na temat: "Android - wprowadzenie"— Zapis prezentacji:

1 Android - wprowadzenie
Łukasz Przywarty

2 Ramowy plan prezentacji
Czym jest Android: definicja, krótka historia. Architektura systemu. Architektura aplikacji. Właściwości systemu. Środowisko deweloperskie. Zalety i wady 2/23

3 Czym jest Android? Utworzony przez konsorcjum 86 firm wchodzących w skład Open Handset Alliance (OHA) w 2007 r. System operacyjny + + Aplikacje Zestaw bibliotek 3/23

4 Czym jest Android? C.d. Napisany w: C, C++, Java.
Wspierane platformy: ARM, MIPS, x86. Rodzina systemów operacyjnych: Unix, Linux. Ostatnia stabilna wersja: 4.2 Jelly Bean. Licencja: Apache 2.0. 4/23

5 Czym jest Android? C.d. 75% - udział na rynku platform mobilnych (iOS – 14,9%, Blackberry - 4,3%). – liczba aktywowanych urządzeń. – dzienna liczba aktywacji. System dostępny na telefonach komórkowych, tabletach ale również: telewizorach, netbook’ach czy aparatach cyfrowych. 5/23

6 Krótka historia rozwoju Androida
– utworzenie Android Inc. (Andy Rubin, Rich Miner, Nick Sears, Chris White). – przejęcie Android Inc. przez Google. 6/23

7 Krótka historia rozwoju Androida c.d.
– pierwsze oficjalne wydanie SDK. – pierwsze komercyjne wydanie Androida z telefonem komórkowym (HTC Dream). 2010 – Android wiodącą platformą na rynku urządzeń mobilnych (wcześniej Symbian). 2012 – 75% udział w rynku, 500 milionów aktywnych urządzeń. 7/23

8 Architektura systemu 8/23

9 Architektura systemu - aplikacje
4. warstwa. Wykonywane przez maszynę wirtualną Dalvika. Wbudowane aplikacje: książka kontaktów, kalendarz, przeglądarka internetowa, telefon, klient wiadomości SMS/MMS itd. Aplikacje w markecie /aplikacje użytkownika. Aplikacje napisane w języku JAVA. 9/23

10 Architektura systemu - komponenty
3. warstwa. Framework aplikacji: manager widoków, manager aktywności, manager powiadomień, manager zasilania, manager okien, odtwarzacz multimediów… Możliwość zastępowania komponentów. Każda aplikacja równa. Równoległe wykonywanie. 10/23

11 Architektura systemu - biblioteki
2. warstwa. Zestaw bibliotek (C/C++) wykorzystywanych przez komponenty. SQLite, SSL, libc, OpenGL, WebKit etc. Dostęp możliwy poprzez framework aplikacji. 11/23

12 Architektura systemu – biblioteki c.d.
2. warstwa. Podstawowe biblioteki dające funkcjonalności znane z języka JAVA. API do struktur danych, obsługi plików, sieci, grafiki etc. Dalvik Virtual Machine (1): wirtualna maszyna Javy – wersja Google, środowisko uruchomieniowe dla każdej aplikacji (jedna aplikacja, jeden proces, jedna instancja DVM), 12/23

13 Architektura systemu – biblioteki c.d.
Dalvik Virtual Machine (2): różnice w stosunku do JVM: inne kody bajtowe (bytecodes), kod w całości w jednym pliku .dex (zamiast w wielu plikach klas), DVM bazuje na rejestrach (zamiast stosach), kompilacja: wydajna obsługa nawet dużej liczby odrębnych DVM. .java .class .dex 13/23

14 Architektura systemu – Linux kernel
1. warstwa. Język C. Obsługa podstawowych usług systemu. Zarządzanie pamięcią i procesami. Stos sieciowy. Sterowniki. Bezpieczeństwo. 14/23

15 Architektura aplikacji
Plik .apk – zasadniczo .zip z określoną strukturą pliku. Budowa pliku .apk: plik manifestu (XML z dużą dawką metadanych – biblioteki, uprawnienia, wersja API etc.), paczka źródeł (dźwięki, grafika etc.), klasy DVM tworzące aplikację. 15/23

16 Stos aplikacji Uruchomienie aplikacji:
tworzenie procesu zawierającego aktywność, okno aplikacji zajmuje cały ekran (oprócz paska statusu) możliwość przełączenia aplikacji lub ekranu aplikacji, ekrany są przechowywane na stosie, istnieje możliwość powrotu do poprzedniego widoku. 16/23

17 Cykl życia aplikacji 3 stany.
Stan aktywny – aktywność na pierwszym planie (na szczycie stosu), Stan pauzy – gdy traci focus, ale jest nadal widoczna dla użytkownika (np. gdy zajmuje część ekranu), Stan zatrzymania – aktywność przykryta przez inną aktywność. 17/23

18 Cykl życia aplikacji c.d.
18/23

19 Środowisko deweloperskie
Android SDK – debugger, biblioteki, emulator, dokumentacja, próbki kodu, tutoriale. Wspierane IDE: Eclipse z ADT (Android Development Tool), IntelliJ IDEA, NetBeans. Android NDK (Native Development Kit) – dla bibliotek napisanych w C i innych językach. Android Debug Bridge (ADB). 19/23

20 Zalety systemu Android
Kompletna platforma (IDE, emulator). Otwartość i dostępność. Łatwość i prostota wdrożenia (Java). Bogata biblioteka komponentów (np. klawiatura), które można zastąpić własnym rozwiązaniem. Możliwość obsługi innych urządzeń niż telefony i tablety. 20/23

21 Wady systemu Android Otwartość – względy bezpieczeństwa.
Rozproszenie – dedykowane wersje systemu na różne urządzenia, dla różnych operatorów, utrudniona procedura aktualizacji. 21/23

22 Bibliografia Collins Ch., Halpin M., Kappler M., Anroid in practice, 2012 22/23

23 Android - wprowadzenie
Łukasz Przywarty


Pobierz ppt "Android - wprowadzenie"

Podobne prezentacje


Reklamy Google