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



Σχετικά έγγραφα
Κινητές τεχνολογίες;

Κινητές τεχνολογίες;

Ειδικά θέματα σε κινητά και ασύρματα δίκτυα

Απαντήστε στις παρακάτω ερωτήσεις πολλαπλής επιλογής (μόνο μία ερώτηση είναι σωστή):

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

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ Δυναμική προσωποποιημένη ενημέρωση προσφορών Super Markets στη Θεσσαλονίκη

Οδηγός των Ελληνικών Microsoft WINDOWS 7

Παρουσίαση Θερινού Σχολείου. Αριστεία ΕΛ/ΛΑΚ ΤΕΙ Αθήνας

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

Περιεχόμενα. Πρόλογος... xiii

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

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

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

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Σεμινάριο Wordpress CMS (Δημιουργία Δυναμικών Ιστοσελίδων)

Π Ε Ρ Ι Ε Χ Ο Μ Ε Ν Α

ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ. Αριθμ. Πρωτ.: /2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ

Tales & Trails. apps4thessaloniki 2016

Dreamweaver. Adobe ΒHΜΑ ΠΡΟΣ ΒHΜΑ. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Αγαμέμνων Μήλιος Μηχανικός Λογισμικού

Έντυπος χάρτης νησιού και χρήση διαδραστικών τεχνολογιών για την προβολή σημείων ενδιαφέροντος.

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

Ποιες είναι οι κύριες ετικέτες που χρησιμοποιεί η HTML για την περιγραφή της συνολικής δομής μιας ιστοσελίδας;

Ανάπτυξη ηλεκτρονικών μαθημάτων στην πλατφόρμα Open eclass. Γνωριμία με την Open eclass

Ολοκληρωμένες Δράσεις προβολής δημοσιότητας για το Δήμο Αρχανών Αστερουσίων Εγχειρίδιο Χρήσης - Παρουσίαση

Μέρος Ι: Εγκατάσταση και ιαμόρφωση των MySQL, Apache και PHP

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

1 Tο βιβλίο Ξεκίνηµα Προγράµµατα και παιχνίδια Περιεχόµενα. Ευχαριστίες... x

Αλεξιάδης Γεώργιος (ΠΕ86) -

Στοιχεία παρουσίασης. Εισαγωγή Θεωρητικό υπόβαθρο Υλοποίηση λογισμικού μέρους συστήματος Συμπεράσματα Μελλοντικές Επεκτάσεις

Ref.: SLWS 1 5Copyright 2005 The European Computer Driving Licence Foundation Ltd Σελίδα 1 από 7

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

Λεπτομέρειες αναφοράς. Λεπτομέρειες συσκευής

Google Apps για το Office 365 για επιχειρήσεις

Ολοκληρωμένο σύστημα διαχείρισης παρουσιών στο Τ.Ε.Ι. Σερρών

Η εφαρμογή είναι βελτιστοποιημένη για όλες τις συσκευές ios και Android, με ios 9.x ή νεότερη έκδοση και Android 4.4 ή νεότερη έκδοση.

Bread Online. Παναγιώτης Ιωαννίδης Επιβλέπων καθηγητής: Μηνάς Δασυγένης

APP INVENTOR ΜΕΡΟΣ A - 1 Η ΕΒΔΟΜΑΔΑ. Σοφία Τζελέπη,

Στοιχεία και έγγραφα που απαιτούνται για την εγγραφή στο ΓΕΜΗ

Εγχειρίδιο Διαχειριστή. (Υπηρεσία Αναζήτησης Συνεπιβατών)

Θέματα Ατομικής Διπλωματικής Εργασίας Ακαδημαϊκό Έτος 2017/2018. Γεωργία Καπιτσάκη (Επίκουρη Καθηγήτρια)

ΤΕΧΝΟΛΟΓΙΕΣ ΣΧΕΔΙΑΣΗΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ (Web Site Design Technologies)

Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) ADVANCED σχεδιασμός ιστοσελίδας ΕΚΔΟΣΗ 1.0. Σόλωνος 108,Τηλ Φαξ

Οδηγός γρήγορης εκκίνησης

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Junior A (Κωδ.Τμήματος AJ1)

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

Εισαγωγή Κεφάλαιο 1: Εγκατάσταση της Access Κεφάλαιο 2: Βάσεις δεδομένων και δομικά στοιχεία της Access

ΘΕΡΙΝΟ ΣΧΟΛΕΙΟ ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΧΕΔΙΑΣΗ ΙΣΤΟΣΕΛΙΔΩΝ ΜΕ HTML, CSS & JAVASCRIPT

Χρήση του Office 365 σε τηλέφωνο Android

Ανοικτά Ακαδημαϊκά Μαθήματα στο Πανεπιστήμιο Αθηνών. Υποδομές Προσωπικό Υποστήριξης

ΟΔΗΓΌΣ ΓΡΉΓΟΡΗΣ ΕΚΚΊΝΗΣΗΣ

Πειραιάς S 2 Ε Lab Ιούνιος Εισηγητής: Δ. Ν. Καλλέργης, MSc. Εργ. Συνεργάτης

Πτυχιακές Εργαστήριο Επικοινωνίας Ανθρώπου-Μηχανής και Εικονικής Πραγματικότητας

Κεφάλαιο 11: Εισαγωγή στην HTML. Εφαρμογές Πληροφορικής Κεφ. 11 Καραμαούνας Πολύκαρπος

ΣΧΕΔΙΑΣΜΟΣ ΠΡΟΣΑΡΜΟ- ΣΤΙΚΩΝ ΙΣΤΟ- ΤΟΠΩΝ

Σχεδίαση και Ανάπτυξη Ιστότοπων

HTML HTML5...CSS

Τι διαφορά έχει μια ιστοσελίδα του Διαδραστικού Ιστού web 2.0 από εκείνη του Στατικού Ιστού web 1.0;

ΕΞΕΤΑΣΤΕΑ ΥΛΗ (SYLLABUS) INTERMEDIATE Υπηρεσίες Διαδικτύου ΕΚΔΟΣΗ 1.0. Διεύθυνση: Ασκληπιού 18 Τηλέφωνο:

ΚΕΦΑΛΑΙΟ 10. Υπηρεσίες και εφαρμογές Διαδικτύου. ΚΕΦΑΛΑΙΟ 10 Υπηρεσίες και εφαρμογές Διαδικτύου. Α Γενικού Λυκείου

Κατασκευή Πληροφοριακού Συστήματος Διαχείρισης Στόλου Οχημάτων

Περιεχόμενα. Εισαγωγή στην Πληροφορική

Χρήση του Office 365 σε iphone ή ipad

A J A X AJAX Γιάννης Αρβανιτάκης

ΑΝΑΚΟΙΝΩΣΕΙΣ ΠΡΟΜΗΘΕΙΩΝ/ΕΡΓΑΣΙΩΝ ΜΕ ΛΗΨΗ ΠΡΟΣΦΟΡΏΝ 10/16

Όλες οι πληροφορίες που περιλαμβάνονται στην παρούσα είναι ιδιοκτησία της Zel Technologies LLC. Όλες οι πληροφορίες είναι ιδιωτικές και δεν

υπηρεσιες προστιθέμενης αξίας Υπηρεσίες προστιθέμενης αξίας

12/5/18. συστημάτων. Το λογισµικό συστηµάτων. Κεφάλαιο 5

Φορολογική Βιβλιοθήκη. Θανάσης Φώτης Προγραμματιστής Εφαρμογών

Μέρος Α Περιβάλλον Εργασίας Windows Εργαστηριακή Άσκηση 1 Το Γραφικό Περιβάλλον του Υπολογιστή... 21

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

Ασφάλεια και υποδομές για μια έξυπνη εποχή _

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

64.1% 18.8% 5.9% 5.2% 2.7%

Εισαγωγή Επαφών από την κάρτα SIM

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

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

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

Εισαγωγή στην ASP.NET. Σημειώσεις Σεμιναρίου Επιμέλεια: Βασίλης Κόλιας 4.0

7 σε 1 Windows 8 Οffice 2013

Η βασική εργαλειοθήκη του διαδικτύου

Περιεχόμενα ΜΕΡΟΣ 1. Πρόλογος... xiii. 1 Εισαγωγή στο Excel Βασικές λειτουργίες του Excel... 23

SharePoint Online. Δημιουργήστε μια τοποθεσία ή μια δημοσίευση ειδήσεων. Αναζήτηση Βρείτε Τοποθεσίες, Άτομα ή Αρχεία.

Στα τελευταία είκοσι χρόνια δημιουργήθηκε και αναπτύχθηκε με εντυπωσιακούς ρυθμούς η Τεχνολογία Πολυμέσων.

Sony FY14 Bravia B2B. Παρουσίαση της νέας σειράς FY14 Bravia B2B

Acrobat 9. Adobe. Βήμα προς Βήμα. Εκδόσεις: Μ. Γκιούρδας. Απόδοση: Μαίρη Γκλα βά

Τα είδη των ιστοσελίδων. Web Sites E-commerce Sites CMS & Blog Sites CMS Flash Facebook Layouts Tumblr Themes

Καλώς ήρθατε στη Cyta Κινητή!

Adobe Dreamweaver CS3

ΔΕ10: Πληροφοριακά Συστήματα Διοίκησης IΙ Εργαστήριο # 2

ΕΞΕΤΑΣΤΕΑ ΥΛΗ KeyCERT EXPERT: ΕΠΕΞΕΡΓΑΣΙΑ ΚΕΙΜΕΝΟΥ. Έκδοση 2.0

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

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

ΔΗΜΙΟΥΡΓΙΑMOBILE ΕΦΑΡΜΟΓΩΝ ΓΙΑ ANDROID ΣΥΣΚΕΥΕΣ ΜΕ APPINVENTOR

Ένωση Μηχανικών Πληροφορικής και Επικοινωνιών Ελλάδας (ΕΜηΠΕΕ) συνοπτικά

Περιεχόμενα. Αντί προλόγου Πώς να χρησιμοποιήσετε το βιβλίο Κεφάλαιο 1: Πώς δημιουργώ το Προφίλ μου στο Facebook;...

Ολοκληρωμένο, Σταθερό, Γρήγορο, Επεκτάσιμο

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

Τ.Ε.Ι. Δυτικής Ελλάδας Τμήμα Διοίκησης Επιχειρήσεων Μεσολόγγι. 7 η Διάλεξη. Μάθημα: Τεχνολογίες Διαδικτύου

Transcript:

Πίνακας Περιεχομένων ΠΡΟΛΟΓΟΣ V Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi 1η Ενότητα: Κινητός ιστός... vii 2η Ενότητα: Κινητές εφαρμογές στην πλατφόρμα Android... vii 3η Ενότητα: Κινητές εφαρμογές επαυξημένης πραγματικότητας... viii 1. ΕΙΣΑΓΩΓΗ: ΤΟ ΟΙΚΟΣΥΣΤΗΜΑ ΤΩΝ ΚΙΝΗΤΩΝ ΕΦΑΡΜΟΓΩΝ 1 1.1. Εισαγωγή... 1 1.2. To «Οικοσύστημα» των Κινητών Εφαρμογών... 1 1.2.1. Κινητές συσκευές... 2 1.2.1.1. Τεχνικά χαρακτηριστικά κινητών συσκευών... 5 1.2.2. Κινητά λειτουργικά συστήματα... 8 1.2.2.1. Android... 9 1.2.2.2. ios... 10 1.2.2.3. Windows Phone... 10 1.2.3. Κινητοί περιηγητές ιστού... 11 1.3. Κατηγορίες Εφαρμογών για Κινητά (ή «Κινητή Στρατηγική»)... 13 1.3.1.1. Εγγενείς εφαρμογές... 14 1.3.1.2. HTML5 εφαρμογές... 15 1.3.1.3. Υβριδικές εφαρμογές... 16 1.4. Σύγκριση Κινητών Στρατηγικών... 17 1.4.1. Πλεονεκτήματα κινητών ιστοτόπων έναντι εγγενών εφαρμογών... 17

x Κινητές Τεχνολογίες 1.4.2. Πότε δικαιολογείται η ανάπτυξη εγγενών εφαρμογών;... 19 1.5. Σύνοψη/ανακεφαλαίωση... 19 1.6. Βιβλιογραφία... 20 1 Η ΕΝΟΤΗΤΑ: ΚΙΝΗΤΟΣ ΙΣΤΟΣ 21 2. ΕΙΣΑΓΩΓΗ ΣΤΟΝ KΙΝΗΤΟ IΣΤΟ 23 2.1. Εισαγωγή... 23 2.2. Εισαγωγή στον Παγκόσμιο Ιστό... 23 2.3. Βασικές Τεχνολογίες Σχεδίασης και Ανάπτυξης στον Παγκόσμιο Ιστό... 27 2.3.1. HTML (HyperText Markup Language)... 27 2.3.2. CSS (Cascading Style Sheets)... 30 2.3.3. Javascript (& jquery)... 32 2.4. Κινητός Iστός... 34 2.4.1. Πλεονεκτήματα του κινητού ιστού... 35 2.4.2. Διαφορές (και προκλήσεις) του κινητού ιστού... 36 2.4.2.1. Κατακερματισμός κινητών συσκευών... 37 2.5. (Σύντομη) Ιστορία του Κινητού Ιστού... 39 2.5.1. Η εποχή του WAP... 40 2.5.2. Η εποχή του dotmobi... 41 2.5.3. Η εποχή του iphone... 41 2.5.4. Η εποχή της HTML5... 41 2.6. Τεχνικές και Εργαλεία Ανάπτυξης για τον Κινητό Ιστό... 42 2.6.1. Ολοκληρωμένα περιβάλλοντα ανάπτυξης για τον κινητό ιστό... 42 2.6.2. Εξομοιωτές (emulators)... 45 2.6.3. Διακομιστής ιστού (web server)... 49 2.7. Ρυθμοί Ανάπτυξης του Κινητού Ιστού... 50

Πίνακας Περιεχομένων xi 2.8. Σύνοψη/ανακεφαλαίωση... 52 2.9. Βιβλιογραφία... 52 3. ΣΧΕΔΙΑΣΜΟΣ ΙΣΤΟΤΟΠΩΝ ΓΙΑ ΚΙΝΗΤΕΣ ΣΥΣΚΕΥΕΣ 55 3.1. Εισαγωγή... 55 3.2. Εναλλακτικές Προσεγγίσεις Ανάπτυξης στον Κινητό Ιστό... 55 3.2.1. Σμίκρυνση (miniaturization)... 57 3.2.2. Ανάπτυξη iστοτόπων ειδικά για Κινητές Συσκευές (mobile specific)... 62 3.2.3. Ανάπτυξη προσαρμοστικών ιστοτόπων (responsive web design)... 65 3.3. Αρχές Σχεδιασμού Κινητών Ιστοτόπων... 69 3.4. Βήμα προς βήμα Μετατροπή Ιστοσελίδας Πλήρους Ιστοτόπου σε Ιστοσελίδα Κινητού Ιστοτόπου... 74 3.5. Ανίχνευση Κινητών Περιηγητών (User Agent detection)... 80 3.6. Σύνοψη/ανακεφαλαίωση... 82 3.7. Βιβλιογραφία... 83 4. ΣΧΕΔΙΑΣΜΟΣ ΠΡΟΣΑΡΜΟΣΤΙΚΩΝ ΙΣΤΟΤΟΠΩΝ 85 4.1. Εισαγωγή... 85 4.2. Προσαρμοστικός Σχεδιασμός στον Ιστό... 85 4.3. Βασικά Συστατικά Αποτελεσματικού Προσαρμοστικού Σχεδιασμού.. 89 4.3.1. Ρευστή διάταξη... 89 4.3.2. Ευέλικτες εικόνες... 95 4.3.3. Ερωτήματα μέσων... 97 4.4. Ένα Ολοκληρωμένο Παράδειγμα... 100 4.5. Βελτιστοποίηση Απόδοσης Ιστοτόπων που Σχεδιάζονται με Βάση τις Αρχές του Προσαρμοστικού Σχεδιασμού... 107 4.5.1. Μείωση του αριθμού των εξαρτώμενων / σχετιζόμενων πόρων... 108

xii Κινητές Τεχνολογίες 4.5.2. Μείωση του μεγέθους και των διαστάσεων των εικόνων... 111 4.6. Ανακεφαλαιώνοντας: Προσαρμοστικός Σχεδιασμός Έναντι Ιστοτόπων Σχεδιασμένων Ειδικά για Κινητές Συσκευές... 112 4.7. CSS Πλαίσια (CSS frameworks)... 114 4.8. Δομή και Λειτουργία... 115 4.8.1. Παραδείγματα χρήσης του Bootstrap... 119 4.9. Σύνοψη/ανακεφαλαίωση... 124 4.10. Βιβλιογραφία... 124 5. ΓΕΩΕΝΤΟΠΙΣΜΟΣ ΣΤΟΝ ΚΙΝΗΤΟ ΙΣΤΟ 125 5.1. Εισαγωγή... 125 5.2. Γεωεντοπισμός και Geolocation API... 125 5.3. Εμφάνιση Θέσης με Χρήση του Geolocation API... 127 5.4. Σύνοψη/ανακεφαλαίωση... 134 5.5. Βιβλιογραφία... 134 6. JQUERY MOBILE 135 6.1. Εισαγωγή... 135 6.2. Επισκόπηση της jquery Mobile... 135 6.3. Ενσωμάτωση jquery Mobile... 138 6.4. Δημιουργία Ιστοσελίδων Βασισμένων στη jquery Mobile... 139 6.5. Δουλεύοντας με Πολλαπλές jquery Mobile Σελίδες... 142 6.6. Προσαρμογή jquery Mobile Σελίδων... 145 6.6.1. Εισαγωγή τίτλων στις σελίδες... 145 6.6.2. Προ ανάκληση περιεχομένου (content prefetching)... 146 6.6.3. Προσαρμογή των μεταβάσεων μεταξύ σελίδων (page transitions)... 147

Πίνακας Περιεχομένων xiii 6.7. Κεφαλίδες, Υποσέλιδα, Μπάρες Εργαλείων (toolbars), Μπάρες Πλοήγησης... 148 6.8. Δουλεύοντας με Λίστες... 154 6.9. Διάταξη Περιεχομένου με Πλέγματα (grids)... 165 6.10. Δουλεύοντας με Φόρμες στη jquery Mobile... 170 6.11. Συμβάντα στη jquery Mobile... 179 6.12. Θέματα (themes) στη jquery Mobile... 186 6.13. Δημιουργία Υβριδικών Κινητών Εφαρμογών με το PhoneGap... 189 6.14. Σύνοψη/ανακεφαλαίωση... 192 6.15. Βιβλιογραφία... 193 2Η ΕΝΟΤΗΤΑ: ΚΙΝΗΤΕΣ ΕΦΑΡΜΟΓΕΣ ΣΤΗΝ ΠΛΑΤΦΟΡΜΑ ANDROID 195 7. Η ΔΟΜΗ ΤΟΥ ANDROID 197 7.1. Εισαγωγή... 197 7.2. Η δομή του Android... 197 7.2.1. Πυρήνας (Linux Kernel)... 198 7.2.2. Βιβλιοθήκες... 198 7.2.3. Πλαίσιο εφαρμογών (Application Framework)... 199 7.2.4. Εφαρμογές (Applications)... 200 7.3. Δομικά στοιχεία εφαρμογών Android... 200 7.3.1. Δραστηριότητα (Activity)... 200 7.3.2. Κύκλος ζωής μιας δραστηριότητας... 202 7.3.3. Υπηρεσίες (Services)... 203 7.3.4. Πάροχος περιεχομένου (Content Provider)... 204 7.3.5. Παραλήπτες μηνυμάτων πανεκπομπών (Broadcast Receivers)... 204 7.3.6. Μανιφέστο εφαρμογών (Android Manifest)... 204

xiv Κινητές Τεχνολογίες 7.4. Το περιβάλλον του Android Studio... 204 7.4.1. Δημιουργία νέου Project... 205 7.4.2. Εξομοιωτής συσκευών Android... 208 7.5. Σύνοψη/ανακεφαλαίωση... 210 7.6. Βιβλιογραφία... 210 8. ΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ 211 8.1. Εισαγωγή... 211 8.2. Συστατικά γραφικής διεπαφής... 211 8.3. Εισαγωγή στον Layout Editor... 212 8.4. Περιγραφή διαθέσιμων γραφικών στοιχείων... 214 8.4.1. Widgets... 215 8.4.2. Πεδία εισόδου κειμένου (Text Fields)... 218 8.4.3. Layouts... 220 8.4.4. Δοχεία (Containers)... 224 8.4.5. Ημερομηνία και ώρα (Date & Time)... 228 8.4.6. Εξειδικευμένα γραφικά στοιχεία (Expert)... 230 8.4.7. Προσαρμόσιμα διαδραστικά γραφικά στοιχεία (Custom Widgets)... 235 8.5. Παράθυρα ειδοποιήσεων (Alert Dialogs) και σύντομα μηνύματα (Toasts)... 237 8.6. Οι ιδιότητες των γραφικών στοιχείων... 238 8.6.1. Βασικές ιδιότητες... 238 8.6.2. Πλάτος, Ύψος, Βαρύτητα (Width, Height, Gravity)... 240 8.6.3. Αναγνωριστικό (id)... 241 8.7. Τοποθέτηση γραφικών στοιχείων... 242 8.8. Προσθήκη εικόνων και υποστήριξη οθονών... 245 8.9. Αλλαγή εικονιδίου και ονόματος μιας εφαρμογής... 250

Πίνακας Περιεχομένων xv 8.10. Σύνοψη/ανακεφαλαίωση... 251 8.11. Βιβλιογραφία... 251 9. ΣΥΝΔΕΣΗ ΚΩΔΙΚΑ ΚΑΙ ΓΡΑΦΙΚΩΝ ΣΤΟΙΧΕΙΩΝ 253 9.1. Εισαγωγή... 253 9.2. id και κλάση R... 253 9.3. Η δομή του κώδικα μιας Android εφαρμογής... 256 9.4. Μέθοδοι του κύκλου ζώης μιας δραστηριότητας... 257 9.5. Σύνδεση γραφικών στοιχείων και κώδικα... 259 9.6. Κλήση μεθόδων των αντικειμένων... 261 9.7. Διαδεδομένες μέθοδοι... 262 9.7.1. H μέθοδος setonclicklistener()... 263 9.7.2. Οι μέθοδοι setbackgroundcolor() και settextcolor()... 265 9.7.3. H μέθοδος setbackgroundresource()... 266 9.8. Συνδυασμός αντικειμένων... 267 9.9. Δημιουργία λιστών... 271 9.10. Ανάκτηση κειμένου από πεδία εισόδου κειμένου... 272 9.11. Εμφάνιση παραθύρων διαλόγου... 273 9.12. Εκκίνηση νέων δραστηριοτήτων... 274 9.13. Διαχείριση μενού... 275 9.14. Σύνοψη/ανακεφαλαίωση... 278 9.15. Βιβλιογραφία... 278 10. ΔΙΑΧΕΙΡΙΣΗ ΠΟΛΥΜΕΣΩΝ 279 10.1. Εισαγωγή... 279 10.2. Υποστήριξη πολυμέσων σε μια Android εφαρμογή... 279

xvi Κινητές Τεχνολογίες 10.3. Διαχείριση ήχου σε μια Android εφαρμογή... 280 10.3.1. Αναπαραγωγή ήχου από τον φάκελο res... 281 10.3.2. Ήχος και κύκλος ζωής των Android εφαρμογών... 282 10.3.3. Παύση αναπαραγωγής αρχείου ήχου... 284 10.3.4. Χρήσιμες μέθοδοι αναπαραγωγής ήχου... 286 10.3.5. Διαχείριση έντασης ήχου... 287 10.3.6. Αναπαραγωγή ήχου από τοποθεσία στο διαδίκτυο... 288 10.3.7. Αναπαραγωγή ήχου από την κάρτα SD... 289 10.3.8. Ηχογράφηση και αποθήκευση στην κάρτα SD... 292 10.4. Διαχείριση βίντεο σε μια Android εφαρμογή... 293 10.4.1. Αναπαραγωγή βίντεο από τον φάκελο raw και από διαδίκτυακές τοποθεσίες... 294 10.4.2. Έλεγχος αναπαραγωγής βίντεο... 295 10.4.3. Εγγραφή βίντεο και αποθήκευση στην κάρτα SD... 296 10.4.4. Λήψη φωτογραφίας και αποθήκευση στην κάρτα SD... 299 10.5. Σύνοψη/ανακεφαλαίωση... 299 10.6. Βιβλιογραφία... 300 11. ΣΥΝΔΕΣΙΜΟΤΗΤΑ & ΔΙΚΤΥΩΣΗ 301 11.1. Εισαγωγή... 301 11.2. Δυνατότητες συνδεσιμότητας και δικτύωσης των Android συσκευών... 301 11.2.1. Bluetooth... 302 11.2.2. Σύνδεση στο διαδίκτυο... 304 11.2.3. NFC... 305 11.3. Διαχείριση των δυνατοτήτων συνδεσιμότητας και δικτύωσης των Android συσκευών με την χρήση κώδικα.... 307 11.3.1. Αποστολή E Mail... 309 11.3.2. Προβολή ιστοσελίδας... 312

Πίνακας Περιεχομένων xvii 11.3.3. Διαχείριση του NFC προσαρμογέα... 314 11.3.4. Αποστολή SMS... 316 11.3.5. Αποστολή αρχείων με την χρήση του Bluetooth... 318 11.4. Σύνοψη/ανακεφαλαίωση... 320 11.5. Βιβλιογραφία... 321 12. ANDROID ΕΦΑΡΜΟΓΕΣ ΜΕ ΕΠΙΓΝΩΣΗ ΘΕΣΗΣ & ΠΛΑΙΣΙΟΥ 323 12.1. Εισαγωγή... 323 12.2. Πλαίσιο (Context), επίγνωση πλαισίου (Context Awareness) και επίγνωση θέσης (Location Awareness)... 323 12.3. Αισθητήρες στις Android συσκευές... 324 12.3.1. Τύποι αισθητήρων... 324 12.4. Κατηγορίες αισθητήρων... 324 12.4.1. Αισθητήρες κίνησης (Motion Sensors)... 325 12.4.2. Αισθητήρες περιβάλλοντος (Environmental Sensors)... 327 12.4.3. Αισθητήρες θέσης... 328 12.5. Διαχείριση αισθητήρων με την χρήση κώδικα... 329 12.6. Ενεργοποίηση αισθητήρων....332 12.7. Ανάκτηση μετρήσεων... 335 12.8. Γεωεντοπισμός στο Android... 336 12.9. Εγκατάσταση και χρήση των χαρτών της Google... 338 12.9.1. Διαχείριση χαρτών με την χρήση κώδικα... 341 12.9.2. Χρήσιμες μέθοδοι των χαρτών της Google... 343 12.10. Δημιουργία εφαρμογής με επίγνωση θέσης και πλαισίου... 344 12.11. Σύνοψη/ανακεφαλαίωση... 348 12.12. Βιβλιογραφία... 348

xviii Κινητές Τεχνολογίες 13. ΔΙΑΧΕΙΡΙΣΗ ΔΕΔΟΜΕΝΩΝ 349 13.1.Εισαγωγή... 349 13.2. Κοινόχρηστες προτιμήσεις Shared Preferences... 349 13.2.1. Ανάκτηση δεδομένων από τις κοινόχρηστες προτιμήσεις... 350 13.2.2. Αποθήκευση και διαγραφή δεδομένων των κοινόχρηστων προτιμήσεων... 351 13.3. Βάση δεδομένων SQLite... 351 13.3.1. Δημιουργία Βάσης SQLite... 352 13.3.2. Διαχείριση δεδομένων σε βάση SQLite... 353 13.3.3. Προσθήκη νέας εγγραφής σε πίνακα... 355 13.3.4. Ανάγνωση μιας εγγραφής από πίνακα... 356 13.3.5. Η μέθοδος query()... 357 13.3.6. Το αντικείμενο Cursor... 359 13.3.7. Ανάγνωση όλων των εγγραφών από ένα πίνακα... 360 13.3.8. Εύρεση αριθμού εγγραφών ενός πίνακα... 361 13.3.9. Ενημέρωση εγγραφής ενός πίνακα... 361 13.3.10. Διαγραφή εγγραφής ενός πίνακα... 361 13.4. Σύνοψη/ανακεφαλαίωση... 362 13.5. Βιβλιογραφία... 362 14. ΧΡΗΣΗ ΥΠΗΡΕΣΙΩΝ ΙΣΤΟΥ (WEB SERVICES) 363 14.1. Εισαγωγή... 363 14.2. Η τεχνολογία των υπηρεσιών ιστού... 363 14.3. Ανάπτυξη εφαρμογής ανταλλαγής δεδομένων μέσω JSON... 366 14.3.1. Δημιουργία κλάσης για επικοινωνία με το web service... 366 14.3.2. Ανάγνωση αντικειμένων από JSON αρχείο... 368

Πίνακας Περιεχομένων xix 14.3.3. Διαδικασία λήψης αντικειμένων από ένα Web Service μέσω μιας ασύγχρονης διεργασίας.... 368 14.4. Σύνοψη/ανακεφαλαίωση... 371 14.5. Βιβλιογραφία... 371 3 Η ΕΝΟΤΗΤΑ: ΚΙΝΗΤΕΣ ΕΦΑΡΜΟΓΕΣ ΕΠΑΥΞΗΜΕΝΗΣ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑΣ 373 15. ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΕΠΑΥΞΗΜΕΝΗ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑ 375 15.1. Εισαγωγή... 375 15.2. Επαυξημένη πραγματικότητα... 375 15.3. Ιστορικήαναδρομή... 377 15.4. Κατηγορίες της τεχνολογίας της Επαυξημένης Πραγματικότητας... 379 15.4.1. Επαυξημένη πραγματικότητα με αναγνώριση εικόνας (Image Tracking Augmented Reality)... 380 15.4.2. Επαυξημένη πραγματικότητα με την χρήση αισθητήρων (Sensor Based Augmented Reality)... 381 15.4.3. Επαυξημένη πραγματικότητα με την χρήση αισθητήρων και θέσης (Location & Sensor Based Augmented Reality)... 383 15.1. Σύνοψη/ανακεφαλαίωση... 385 15.2. Βιβλιογραφία... 385 16. ΥΛΟΠΟΙΗΣΗ GPS & SENSOR ΕΦΑΡΜΟΓΩΝ ΕΠΑΥΞΗΜΕΝΗΣ ΠΡΑΓΜΑΤΙΚΟΤΗΤΑΣ 387 16.1. Εισαγωγή... 387 16.2. Επαυξημένη πραγματικότητα με την χρήση αισθητήρων και θέσης.. 388 16.3. Android Augment Reality Framework... 390 16.3.1. Εγκατάσταση του Android Augmented Reality Framework... 391 16.3.2. H δομή του Android Augment Reality Framework... 393

xx Κινητές Τεχνολογίες 16.4. Τοποθέτηση AR Marker... 396 16.5. Τοποθέτηση ενός AR Marker και επεξεργασία των ιδιοτήτων του... 400 16.6. Διαμόρφωση του Android Augment Reality Framework... 402 16.7. Σύνοψη/ανακεφαλαίωση... 406 16.8. Βιβλιογραφία... 407 17. ΤΟ IMAGE MARKER BASED ΠΛΑΙΣΙΟ ANDAR 409 17.1. Εισαγωγή... 409 17.2. «Image Marker based» εφαρμογές επαυξημένης πραγματικότητας... 409 17.3. Εγκατάσταση της βιβλιοθήκης AndAR μέσω SVN Checkout... 412 17.4. Το project AndARModelViewer... 414 17.4.1. Η Δραστηριότητα AugmentedModelViewerActivity.java... 415 17.5. Εισαγωγή τρισδιάστατου μοντέλου στο AndARModelViewer... 417 17.6. Σύνοψη/ανακεφαλαίωση... 419 17.7. Βιβλιογραφία... 420