Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών

Σχετικά έγγραφα
Digital Academy. Εισαγωγή στην ανάπτυξη Android Εφαρμογών

ANDROID Προγραμματισμός Εφαρμογών

Ανάπτυξη διαδικτυακής εφαρμογής σε περιβάλλον κινητών συσκευών με λειτουργικό σύστημα Android

Διπλωματική Εργασία. Μουσικές Εφαρμογές σε Περιβάλλον Κινητών Συσκευών Android με Χαρακτηριστικά Εξατομίκευσης

ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΠΑΡΑΡΤΗΜΑ ΓΡΕΒΕΝΩΝ ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

Λιόλιου Γεωργία. ιατµηµατικό Πρόγραµµα Μεταπτυχιακών Σπουδών στα Πληροφοριακά Συστήµατα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ

Ανάπτυξη εφαρμογής ηλεκτρονικού πίνακα ανακοινώσεων για φορητή συσκευή

Python και Android. Νίκος Νοδαράκης. 17 Μαΐου 2010

Γεωργίου Εμμανουήλ Καλλέργη

Τμήμα Πληροφορικής & Επικοινωνιών ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Εφαρμογή για το λειτουργικό σύστημα Android

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Ταξιδιωτικός οδηγός της Θεσσαλονίκης για Android

Ανάπτυξη Εφαρμογής Ταξίμετρου σε Android

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Ανάπτυξη εφαρμογής Android και IOS σε περιβάλλον Flash. ΟΝΟΜΑΤΕΠΩΝΥΜΑ ΣΠΟΥΔΑΣΤΩΝ

Διαχειριστής αγροκτήματος από συσκευές με λειτουργικό σύστημα Android

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Ανάπτυξη εφαρμογής ασφαλείας για τον έλεγχο, περιορισμό και διαχείριση της διεπαφής χρήστη σε περιβάλλον Android.

Ατομική Διπλωματική Εργασία ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΣΤΗΝ ΠΛΑΤΦΟΡΜΑ GOOGLE ANDROID ΓΙΑ ΤΗΝ ΕΞ ΑΠΟΣΤΑΣΕΩΣ ΠΑΡΑΚΟΛΟΥΘΗΣΗ ΝΕΦΡΟΠΑΘΩΝ ΑΣΘΕΝΩΝ

ΠΡΟΛΟΓΟΣ. Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΛΑΡΙΣΑΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ANDROID ΓΙΑ ΤΗΝ ΔΙΑΧΕΙΡΗΣΗ ΑΥΤΟΚΙΝΗΤΟΥ

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής

ΤΕΙ ΠΕΙΡΑΙΑ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΑ ΤΜΗΜΑ ΨΗΦΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΑΝΑΠΤΥΞΗ ΠΑΙΧΝΙΔΙΟΥ ΖΩΓΡΑΦΙΚΗΣ ΜΕΣΩ ΚΟΙΝΩΝΙΚΟΥ ΔΙΚΤΥΟΥ ΜΕ ΣΥΝΔΕΣΗ BLUETOOTH ΣΕ ΠΛΑΤΦΟΡΜΑ ANDROID

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ ΤΜΗΜΑΤΟΣ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

"Εφαρμογή Android για λήψη ανακοινώσεων" ("Android application for receiving announcements") Πτυχιακή Εργασία. Κρουσταλάκης Νικόλαος

Τεχνολογία Ηλεκτρονικού Εµπορίου. 8 η διάλεξη: Κινητό Ηλεκτρονικό Εµπόριο - Android. Χρήστος Γεωργιάδης

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης

Ανώτατο Τεχνικό Εκπαιδευτικό Ιδρυμα ΚΑΒΑΛΑΣ. Τμημα Διοίκησης Επιχειρήσεων ΑΜΒΡΟΣΙΑΔΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ. Επιβλέπων Καθηγητής: Μαρδύρης Βασίλειος

Διεπαφές Φορητών Συσκευών. και Τεχνολογίες Αλληλεπίδρασης - Mobile Interfaces and Interaction Technologies

ΣΧΕΔΙΑΣΗ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΕΜΠΟΡΙΚΟΥ PORTAL ΓΙΑ ΤΗΝ ΠΟΛΗ ΤΩΝ ΣΕΡΡΩΝ

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΣΥΣΚΕΥΕΣ ANDROID ΜΕ ΤΗΝ ΧΡΗΣΗ ΤΟΥ IDE BASIC4ANDROID ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ ΡΗΓΑΚΗΣ ΗΡΑΚΛΗΣ

ΚΕΦΑΛΑΙΟ 2 ΛΟΓΙΣΜΙΚΟ

ΣΧΕΔΙΑΣΗ ΚΑΙ ΥΛΟΠΟΙΗΣΗ ΕΜΠΟΡΙΚΟΥ PORTAL ΓΙΑ ΤΗΝ ΠΟΛΗ ΤΩΝ ΣΕΡΡΩΝ

ΗΛΕΚΤΡΟΝΙΚΟ ΒΙΒΛΙΑΡΙΟ ΚΑΤΟΙΚΙΔΙΩΝ

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτη

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ

Ατομική Διπλωματική Εργασία ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΣΤΗΝ ΠΛΑΤΦΟΡΜΑ GOOGLE ANDROID ΓΙΑ ΤΗΝ ΕΞ ΑΠΟΣΤΑΣΕΩΣ ΠΑΡΑΚΟΛΟΥΘΗΣΗ ΝΕΦΡΟΠΑΘΩΝ ΑΣΘΕΝΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ

Κατανεμημένα Συστήματα

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ ΣΧΟΛΗ ΔΙΟΙΚΗΣΗΣ ΚΑΙ ΟΙΚΟΝΟΜΙΑΣ ΤΜΗΜΑ ΔΙΟΙΚΗΣΗΣ ΕΠΙΧΕΙΡΗΣΕΩΝ ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ

«Εφαρμογή Android για το Γραφείο Φυσικής Αγωγής ΑΤΕΙ Θεσσαλίας»

Κεφάλαιο 3.1: Λειτουργικά Συστήματα. Επιστήμη ΗΥ Κεφ. 3.1 Καραμαούνας Πολύκαρπος

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Τεχνολογικών Εφαρμογών. Τμήμα Μηχανικών Πληροφορικής

Κατασκευή δικτυακής εφαρμογής στην αρχιτεκτονική ios iphone που υλοποιεί ένα παιχνίδι ερωτοαπαντήσεων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ

Ατομική Διπλωματική Εργασία ΑΝΑΠΤΥΞΗ ANDROID ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΔΙΑΧΕΙΡΙΣΗ ΕΡΓΑΣΙΩΝ THΣ ΕΤΑΙΡΕΙΑΣ 3D ELECTRONICS SERVICES.

ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΔΙΑΜΟΙΡΑΣΗΣ ΑΡΧΕΙΩΝ ΜΕΤΑΞΥ ΔΙΑΦΟΡΕΤΙΚΩΝ ΣΥΣΚΕΥΩΝ ΣΤΗΝ ΠΛΑΤΦΟΡΜΑ ANDROID

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Ανάπτυξη εφαρμογής προμήθειας εισιτηρίων σε κινηματογράφο με χρήση της πλατφόρμας Android

ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΤΗ JustAlert SPOTIT. Οδηγίες για την εγκατάσταση της εφαρμογής στο κινητό σας

AΕΙ ΠΕΙΡΑΙΑ T.T. ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ T.E. ΔΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ

Πτυχιακή Εργασία. Σχολή Τεχνολογικών Εφαρµογών Τµήµα Εφαρµοσµένης Πληροφορικής και Πολυµέσων

Το λειτουργικό σύστημα. Προγραμματισμός II 1

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ

Ενότητα 3 - Θέματα Εφαρμοσμένης Επιστήμης Υπολογιστών. Κοντογιάννης Βασίλειος ΠΕ19

Smartphones και πολυμέσα

ΤΕΙ ΠΕΙΡΑΙΑ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΗΛΕΚΤΡΟΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Αντικειμενοστρεφής Προγραμματισμός

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Σχεδίαση και ανάπτυξη εφαρμογής Android για καταγραφή επιδόσεων τοξοβόλων

Τεχνολογία Λογισμικού για κινητές εφαρμογές

Κεφάλαιο 2: Λογισμικό (Software) Εφαρμογές Πληροφορικής Κεφ. 2 Καραμαούνας Πολύκαρπος

ΠΙΣΤΟΠΟΙΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΤΗΣ ΑΝΑΠΤΥΞΗΣ WEB ΚΑΙ MOBILE ΕΦΑΡΜΟΓΩΝ. «Certified Web and Mobile Applications Developer» SYLLABUS. Έκδοση 1.

Εισαγωγή στην Πληροφορική

AΕΙ ΠΕΙΡΑΙΑ T.T. ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ

"Ανάπτυξη Location Based εφαρμογής με τεχνολογίες GPS, HTML5 και Android"

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΕΦΑΡΜΟΓΗ ANDROID ΓΙΑ ΕΝΗΜΕΡΩΣΗ ΓΙΑ ΚΛΟΠΗ ΤΑΥΤΟΤΗΤΑΣ ΣΤΟ ΔΙΑΔΙΚΤΥΟ - PHISHING

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ. Ανάπτυξη εφαρμογής Android για την παροχή υπηρεσιών καθοδήγησης στους χρήστες. ΟΝΟΜΑΤΕΠΩΝΥΜO ΣΠΟΥΔΑΣΤH ΓΚΟΥΡΝΕΛΟΣ ΛΑΜΠΡΟΣ ΑΜ.

ΑΛΕΞΑΝ ΡΕΙΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΘΕΣΣΑΛΟΝΙΚΗΣ

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής

Σύγχρονες τάσεις στα ασύρματα ευρυζωνικά δίκτυα και δυνατότητες αξιοποίησής τους στην ελληνική περιφέρεια

Εισαγωγή στην Ανάπτυξη Εφαρμογών Android

Greek Android Community

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ

ΑΜ:2318 ΝΑΥΠΑΚΤΟΣ P a g e

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΑΝΑΤΟΛΙΚΗΣ ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ

ΚΕΦΑΛΑΙΟ 2 - ΛΟΓΙΣΜΙΚΟ

ΠΑΡΑΡΤΗΜΑ ΓΡΕΒΕΝΩΝ ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

Πολυμέσα. παρέχουν ένα περιβάλλον πρόσβασης στα τμήματα, μέσω συνδέσεων με οποιονδήποτε τρόπο

JQuery Mobile και PhoneGap: Σχεδιασμός και ανάπτυξη μιας εφαρμογής για κινητά

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής

"Έλεγχος Συμπτωμάτων Υγείας μέσω Κινητών Android - "App edoctor""

Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής. Πτυχιακή Εργασία. Δασκαλάκης Μιχάλης (ΑΜ:2705) Επιβλέπων Καθηγητής: Σπύρος Παναγιωτάκης

Θεσσαλονίκη Alert - Αναλυτική παρουσίαση εφαρμογής

Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Μεταπτυχιακή Διατριβή. Ψηφιακή εγκληματολογία μνήμης σε συσκευές Android. Live memory forensics on Android devices. Σπυρίδων Γενετζάκης

ΕΦΑΡΜΟΓΗ ANDROID ΓΙΑ ΠΡΟΓΝΩΣΗ ΚΑΙΡΟΥ ΣΤΗΝ ΗΠΕΙΡΟ ΜΕ ΧΡΗΣΗ ΤΟΥ MIT App Inventor

Κίνηση ίτροχου Οχήµατος µε την βοήθεια Arduino και Android

ΠΑΝΕΠΙΣΤΗΜΙΟ ΔΥΤΙΚΗΣ ΑΤΤΙΚΗΣ

ΚΟΙΝΩΝΙΚΗ ΔΙΚΤΥΩΣΗ ΜΕΣΩ ΚΙΝΗΤΩΝ ΣΥΣΚΕΥΩΝ: ΧΡΗΣΗ ΔΕΚΤΗ GPS ΓΙΑ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΗΣ ΚΟΙΝΩΝΙΚΗΣ ΔΙΚΤΥΩΣΗΣ ΣΕ ΚΙΝΗΤΗ ΣΥΣΚΕΥΗ

Λειτουργικά Συστήματα (Λ/Σ)

Μάθημα 1 ο ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΩΝ ΛΕΙΤΟΥΡΓΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ

Πανεπιστήμιο Πειραιώς Τμήμα Πληροφορικής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ. Ανάπτυξη εφαρμογής παραγγελιοληψίας σε Android Development of an ordering application in Android

ΚΕΦΑΛΑΙΟ 6. Περιβάλλοντα Ανάπτυξης Εφαρμογών. ΚΕΦΑΛΑΙΟ 6 Περιβάλλοντα Ανάπτυξης Εφαρμογών. Α Γενικού Λυκείου

Cloud Computing with Google and Microsoft. Despoina Trikomitou Andreas Diavastos Class: EPL425

Βασίλειος Κοντογιάννης ΠΕ19

ΑΝΑΠΤΥΞΗ ANDROID ΕΦΑΡΜΟΓΗΣ ΓΙΑ ΤΗΝ ΑΞΙΟΠΟΙΗΣΗ ΔΕΔΟΜΕΝΩΝ ΑΠΟ ΕΝΣΩΜΑΤΩΜΕΝΟΥΣ ΑΙΣΘΗΤΗΡΕΣ ΚΙΝΗΤΩΝ ΣΥΣΚΕΥΩΝ. Ευάγγελος Στεφανάκης (ΑΜ: Τ-02341)

Πανεπιστήμιο Πειραιώς. Τμήμα Ψηφιακών Συστημάτων. Π.Μ.Σ. " Ψηφιακά Συστήματα & Υπηρεσίες "

Αξιοποίηση της Τεχνολογίας των Εικονικών Μηχανών στην Επαγγελματική Εκπαίδευση και την Κατάρτιση Πληροφορικής. Βασιλάκης Βασίλειος Τζανάκης Δημήτριος

Transcript:

Βιβλιογραφία: Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών Προγραμματισμός Android Ian Clifton. AndroidTM User Interface Design, Addison-Wesley, 2013 P. Deitel. H. Deitel, A. Deitel. Android Προγραμματισμός (2η έκδοση), Γκιούρδας, 2015. (ΕΥΔΟΞΟΣ) B. C. Zapata, Android Studio Application Development, Packt Publishing, 2013 (http://it-ebooks.info/book/4248/) 1

Το Λειτουργικό Σύστημα Android 2

Android Κινητά τηλέφωνα: οθόνες αφής, κάμερες, πολυμέσα, δέκτες GPS, Bluetooth, WiFi, διάφοροι αισθητήρες που διευκολύνουν την επικοινωνία, παρέχουν ψυχαγωγία, σημαντικές δυνατότητες χειρισμού δεδομένων Android: Πλατφόρμα ανοικτού λογισμικού για την ανάπτυξη εφαρμογών σε κινητά τηλέφωνα ή ταμπλέτες. Ανήκει στην Open Handset Alliance και προωθείται από τη Google ΟΗΑ : 30 εταιρείες τεχνολογίας (Motorola, HTC, T-Mobile, Qualcomm) 3

Εκδόσεις Alpha (1.0) : 2007 Beta (1.1) : 2008 Cupcake (1.5) : 2009 Donut (1.6) : 2009 Eclair (2.0 2.1) : 2009-2010 Froyo (2.2 2.2.3) : 2010 Gingerbread (2.3 2.3.7) : 2010-2011 Honeycomb (3.0 3.2.6) - 2011 Ice Cream Sandwich (4.0 4.0.4) : 2011 Jelly Bean (4.1 4.3.1) : 2012 KitKat (4.4 4.4.4) : 2013 "L" release (developer preview) - 2014 4

Χαρακτηριστικά Υλικό που υποστηρίζει το λογισμικό Πυρήνας Linux Βιβλιοθήκες SQLite WebKit OpenGL Περιβάλλον εκτέλεσης εφαρμογών Εικονική μηχανή Dalvik Βιβλιοθήκες του πυρήνα Εκθεση διαφόρων εφαρμογών λειτουργικού συστήματος στο επίπεδο του πυρήνα Προεγκατεστημένες εφαρμογές Υποδομές ανάπτυξης και εκτέλεσης εφαρμογών από τους χρήστες Υποδομές ανάπτυξης και εξομοίωσης εφαρμογών από τους χρήστες 5

Ενσωματωμένες εφαρμογές Διaχειριστής email Χειριστής SMS Διαχειριστής προσωπικών πληροφοριών (PIM Personal Information Manager) Πλήρης οδηγός με χάρτες (GoogleMaps) Φυλλομετρητής διαδικτύου (Web Browser) Διαχειριστής πολυμέσων (ήχος, εικόνα, βίντεο) Εφαρμογή για προμήθεια εφαρμογών από την αγορά της Google (Google Play Store) 6

Δυνατότητες Περιφερειακές Συσκευές Προσδιορισμός Θέσης Υπηρεσίες Παρασκηνίου Διαχείριση Δεδομένων Ενδοεπικοινωνία Πολυμέσα Υπηρεσίες P2P 7

Δομή του Λ. Σ. Android 8

Δομή του Android Πυρήνας Linux Κατώτερο επίπεδο: Πυρήνας Linux (Linux kernel) υπεύθυνος για: τη διαχείριση των device drivers (οθόνης, WiFi, κάμερας, ήχου κ.α.), τον έλεγχο πρόσβασης στους πόρους του συστήματος, τη διαχείριση μνήμης και τις λοιπές υπηρεσίες που παρέχει ένα λειτουργικό σύστημα. Προσαρμόζεται σε διαφορετικές αρχιτεκτονικές => Συμβατό με ευρεία γκάμα συσκευών Επίπεδο «αφαίρεσης υλικού» Όλα τα υπόλοιπα επίπεδα της στοίβας βασίζονται στο κατώτατο επίπεδο του Linux και όχι στο υλικό μας συγκεκριμένης συσκευής. 9

Δομή του Android Ενσωματωμένες Βιβλιοθήκες (1) Ένα επίπεδο επάνω βρίσκονται οι ενσωματωμένες βιβλιοθήκες του συστήματος που είναι γραμμένες σε C/C++ και περιλαμβάνουν: Surface Manager : Διαχείριση σχεδιαστικών επιφανειών. Αφορά τη διαχείριση και την εμφάνιση στην οθόνη των παραθύρων των εφαρμογών OpenGL ES και SGL: Δυνατότητα για σχεδίαση τρισδιάστατων και δισδιάστατων γραφικών αντίστοιχα Media Framework: Ρουτίνες για κωδικοποίηση-αποκωδικοποίηση ήχου και βίντεο σε διαθέσιμα formats FreeType: Δυνατότητα για αποτύπωση raster και vector γραμματοσειρών 10

Δομή του Android Ενσωματωμένες Βιβλιοθήκες (2) SSL: Υλοποιεί το πρότυπο OpenSSL για διαχείριση πιστοποιητικών κατά την δημιουργία ασφαλών συνδέσεων με απομακρυσμένους εξυπηρετητές SQLite: βιβλιοθήκη που μπορεί να χρησιμοποιηθεί σαν ένα ΣΔΒΔ WebKit: Μηχανή διάταξης γραφικών (Layout engine) libc: βασική βιβλιοθήκη C 11

Δομή του Android Android Runtime Core Libraries: Βασικές βιβλιοθήκες Java γραμμένες ειδικά για τον διερμηνευτή Android Dalvik Virtual Machine: Εκτελεί αρχεία.dex (Dalvik executable files) και όχι τα αρχεία.class της Java Οι εφαρμογές Android (γραμμένες σε Java) μεταγλωττίζονται σε αρχεία.class και αυτά σε αρχεία.dex χρησιμοποιώντας το εργαλείο dx (ενσωματωμένο στο SDK) 12

Διαφορά λειτουργίας Java VM και Dalvik VM Το αρχείο που είναι γραμμένο σε Java μεταγλωττίζεται και ο κώδικας που προκύπτει μεταγλωττίζεται ξανά με τη χρήση του μεταγλωττιστή Dalvik Παράγεται ο κώδικας Dalvik που εκτελείται στην εικονική μηχανή Dalvik Λόγος της διπλής μεταγλώττισης στο ΛΣ Android: Να αποφευχθεί η διαφοροποίηση του δεύτερου μεταγλωττιστή με τις ενδεχόμενες αλλαγές στις εκδόσεις της γλώσσας Java στο μεταγλωττιστή της 13

Δομή του Android Application Framework Κλάσεις με τη χρήση των οποίων είναι δυνατή η χρήση των εφαρμογών. Διαχειριστές υπεύθυνους για τον έλεγχο κύκλου ζωής μιας εφαρμογής την πρόσβαση σε κοινά δεδομένα (π.χ. επαφές) Διαχείριση των εγκατεστημένων εφαρμογών, των πόρων κ.α 14

Δομή του Android Applications Εφαρμογές ενσωματωμένες στη συσκευή Εφαρμογές τρίτων Χρησιμοποιούν τις βιβλιοθήκες του προηγούμενου επιπέδου 15

Εφαρμογές χρήστη Μία εφαρμογή χρήστη: Δέσμη συνιστωσών εφαρμογής, πόρων και αρχείων με δεδομένα ενσωματώνεται σε ένα αρχείο με επέκταση.apk το οποίο αποτελείται από 3 συνιστώσες: Dalvik executable: Ο κώδικας Java ο οποίος έχει μεταγλωττιστεί δύο φορές και έχει τη μορφή εκτελέσιμου κώδικα Resources: Πόροι που δεν είναι σε μορφή κώδικα. Διατάξεις οθόνης, όψεις, γραμματοσειρές, ονομασίες, χρώματα, εικόνες, ήχοι, βίντεο κλπ Native Libraries: Η εφαρμογή μπορεί να περιέχει ενσωματωμένες εφαρμογές Χαλαρή σύζευξη ξεχωριστά εκτελούμενων συνιστωσών Κάθε συνιστώσα μπορεί να ξεκινάει ανεξάρτητα αν το επιτρέπει η εφαρμογή 16

Βασικές οντότητες στις εφαρμογές Android Δραστηριότητα (Activity) ~ Οθόνη της εφαρμογής αντιστοιχεί σε μία κλάση Java που αποθηκεύεται στο φάκελο src/package υλοποιείται κληρονομώντας απλά την κλάση Activity Υπηρεσία (Service) : Τρέχει στο παρασκήνιο χωρίς να υπάρχει οπτική πληροφόρηση για τον χρήστη (π.χ. κατέβασμα δεδομένων από το διαδίκτυο) Δέκτης εκπομπής (Broadcast Receiver): Λαμβάνει εκπεμπόμενα μηνύματα σχετικά με τα γεγονότα του συστήματος (π.χ. μεταβολές μπαταρίας, μηνύματα κ.α.) Πάροχος περιεχομένου(content Provider): Δίνει τη δυνατότητα σε εφαρμογές να έχουν πρόσβαση σε δεδομένα της συσκευής που μπορούν να μοιράζονται (π.χ. επαφές, εικόνες, βίντεο, κ.α) Πρόθεση (Intent): Ασύγχρονο μήνυμα μεταξύ δύο εφαρμογών ή συνιστωσών Το μήνυμα επισυνάπτεται σε ένα intent object το οποίο μεταφέρεται από το ΛΣ στη συνιστώσα ~ Μηχανισμός διέγερσης συγκεκριμένων ενεργειών 17