1 / 23

Android - wprowadzenie

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. Zalety i wady. 2/23. Czym jest Android?.

Download Presentation

Android - wprowadzenie

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Android- wprowadzenie Łukasz Przywarty 171018

  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 86firm wchodzącychw skład OpenHandset Alliance (OHA) w 2007 r. + + Aplikacje System operacyjny 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%). • 500 000 000– liczba aktywowanych urządzeń. • 1 300 000 – 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 • 10.2003 – utworzenie Android Inc. (Andy Rubin, Rich Miner, Nick Sears, Chris White). • 17.08.2005 – przejęcie Android Inc. przez Google. 6/23

  7. Krótka historia rozwoju Androida c.d. • 5.11.2007 – pierwsze oficjalne wydanie SDK. • 22.10.2008 – pierwsze komercyjne wydanie Androidaz 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 znanez języka JAVA. • API do struktur danych, obsługi plików, sieci, grafiki etc. • DalvikVirtualMachine (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. • DalvikVirtualMachine (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: • wydajnaobsługa nawet dużej liczby odrębnych DVM. 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ż telefonyi 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., Anroidinpractice, 2012 • http://developer.android.com 22/23

  23. Android- wprowadzenie Łukasz Przywarty 171018

More Related