Σημειώσεις για το μάθημα Τεχνολογία και Προγραμματισμός Κινητών Συσκευών χρησιμοποιώντας το Android Studio. Σημειώσεις Android.
|
|
- Πτολεμαῖος Σερπετζόγλου
- 6 χρόνια πριν
- Προβολές:
Transcript
1 Σημειώσεις για το μάθημα Τεχνολογία και Προγραμματισμός Κινητών Συσκευών χρησιμοποιώντας το Android Studio. Σημειώσεις Android Ιωάννης Έλληνας Athens 2018
2
3 Author Name Σημειώσεις Android Ιωάννης Έλληνας
4 Σημειώσεις Android Copyright 2018 Ιωάννης Έλληνας. All rights reserved. No part of this book may be used or reproduced in any manner whatsoever without written permission except in the case of brief quotations em- bodied in critical articles or reviews. Πρώτη Έκδοση: Απρίλιος 2018
5 Περιεχόμενα Σημειώσεις Android... 2 Android Studio... 6 Εγκατάσταση... 6 Δημιουργία νέου project... 7 AVD Manager Εκτέλεση Φόρτωμα ήδη υπάρχουσας εφαρμογής Εγκατάσταση του Genymotion Περιήγηση στο Android Studio Project Manager Ανάλυση πόρων Αποσφαλμάτωση Διατάξεις οθόνης (Layouts) ConstraintLayout Google Firebase Χρήση της βάσης δεδομένων με κινητή συσκευή Push Notifications FCM Υπηρεσία εντοπισμού θέσης (GPS) Χάρτες Google... 64
6
7 Android Studio Εγκατάσταση Κατεβάστε και εγκαταστήστε το Android Studio: Η οθόνη αμέσως μετά την εγκατάσταση είναι: Στο κάτω μέρος της οθόνης πατήστε το Configure Check for Updates και αν υπάρχουν ενημερώσεις προχωρήστε σε αυτές. Κάθε έκδοση Android έχει το δικό της SDK (Software Development Kit), το οποίο επιτρέπει την εγκατάσταση του αντίστοιχου εξομοιωτή AVD (Android Virtual Device), ο οποίος μπορεί να είναι μα κινητή συσκευή, ένα tablet, μια τηλεόραση, και στον οποίο θα τρέξει η εφαρμογή μας. Για την ενσωμάτωση διαφόρων εκδόσεων Android πατάμε Configure SDK Manager και εμφανίζονται όλες οι δυνατές εκδόσεις και ποιες από αυτές είναι ήδη εγκατεστημένες. Καλό είναι να εγκαταστήσετε την τελευταία έκδοση καθώς επίσης και την έκδοση που έχει το κινητό σας επειδή σε αυτό θα τρέχουν οι εφαρμογές που θα αναπτύσσονται. Αν για παράδειγμα το κινητό σας έχει την έκδοση Android 5.1 (Lollipop ή ΑΡΙ 22), τότε τσεκάρετε το αντίστοιχο κουτάκι και πατάτε το πλήκτρο OK κάτω δεξιά.
8 Σημειώσεις Android Δημιουργία νέου project Τα βήματα δημιουργίας ενός νέου project είναι τα εξής: Από την οθόνη εισόδου του Android Studio επιλέγουμε: Start a new Android Studio Project Αν δεν υπάρχει η οθόνη εισόδου επειδή έχετε ήδη ανοικτό κάποιο project, τότε επιλέγετε File New New Project. Τοποθετούμε το όνομα της εφαρμογής: Application name: MyFirstProject Company domain: mybook.gr Τοποθετούμε το workspace οπουδήποτε στο δίσκο μας: Project location: C:\Users\ 7
9 Στην επόμενη οθόνη καθορίζουμε το ελάχιστο API που θα τρέχει η εφαρμογή μας. Θέτοντας το ΑΡΙ 21 παρατηρούμε ότι θα τρέχει στο 71,3% των συσκευών.
10 Σημειώσεις Android Στην επόμενη οθόνη καθορίζουμε τη μορφή της δραστηριότητας με την οποία θα ξεκινήσει η εφαρμογή (ουσιαστικά τη μορφή που θα παρουσιάσει η οθόνη μας). Συνήθως επιλέγουμε το Empty Activity, η οποία είναι μια κενή δραστηριότητα στην οποία εμείς καθορίζουμε την εμφάνιση με κάποιο αρχείο xml. Στην επόμενη οθόνη παρουσιάζονται οι εξής προ-τοποθετημένες τιμές: Activity Name: MainActivity Το όνομα της υποκλάσης με την οποία θα ξεκινήσει η εκτέλεση της εφαρμογής. Layout Name: activity_main Το όνομα του xml αρχείου το οποίο καθορίζει την εμφάνιση της εφαρμογής στην οθόνη. 9
11 Με το πλήκτρο Next και στη συνέχεια Finish ολοκληρώνεται η δημιουργία νέου project και στην οθόνη μας έρχεται η οθόνη ανάπτυξης των εφαρμογών.
12
13 Στο αριστερό μέρος παρουσιάζεται η δομή της εφαρμογής μας. Στο δεξιό μέρος παρουσιάζονται τα MainActivity.java και το περιγραφικό αρχείο activity_main.xml. Στη δεξιά άκρη εμφανίζονται οι ιδιότητες των widgets του περιγραφικού αρχείου. Αν για παράδειγμα πατήσουμε πάνω στη λέξη Hello World, θα δούμε δεξιά ότι είναι ένα πεδίο κειμένου (Text View) το οποίο μπορεί να βρίσκεται είτε στο activity_main.xml ή στο αρχείο strings.xml. AVD Manager Με την επιλογή Tools AVD Manager παράγεται η οθόνη δημιουργίας του εξομοιωτή της κινητής συσκευής. Επιλέγουμε Create Virtual Device.
14 Σημειώσεις Android Επιλέγουμε Phone και μια έτοιμη συσκευή ή δημιουργούμε μια δική μας με το New Hardware Profile. Επειδή η ταχύτητα εξαρτάται από την ανάλυση της οθόνης του εξομοιωτή, επιλέγουμε μια μεσαία ανάλυση όπως 800Χ480 ή 1280Χ
15 Ιωάννης Έλληνας Επιλέγουμε κάποιο λειτουργικό με API level από 15 και επάνω. Αν υπάρχει η ένδειξη Download δίπλα σε αυτό που θα επιλέξουμε τότε κατεβάζουμε το συγκεκριμένο API. 14
16 Σημειώσεις Android Στη συνέχεια δημιουργούμε ένα όνομα για αυτόν τον εξομοιωτή. 15
17 Ιωάννης Έλληνας Εκκινώντας αυτόν τον εξομοιωτή, παρουσιάζεται στην οθόνη μας: 16
18 Σημειώσεις Android 17
19 Ιωάννης Έλληνας Εκτέλεση Κατά την εκτέλεση μιας εφαρμογής πρέπει να επιλέξουμε τον εξομοιωτή που θα τρέξει η εφαρμογή (όπως αυτός που δημιουργήθηκε με τον AVD Manager) ή κάποιο κινητό τηλέφωνο που είναι συνδεδεμένο στον υπολογιστή μας. Για να βλέπουμε την οθόνη του κινητού μας στην επιφάνεια εργασίας, κατεβάστε και τρέξτε την εφαρμογή Vysor η οποία είναι μια επέκταση του Google Chrome. Προτιμούμε τον τελευταίο τρόπο εκτέλεσης των προγραμμάτων για να αποφύγουμε τις καθυστερήσεις του εξομοιωτή. Επίσης, μπορούμε να δημιουργήσουμε πιο γρήγορους εξομοιωτές που να μοιάζουν με το κινητό μας χρησιμοποιώντας την εφαρμογή Genymotion. Μετά την επιλογή του εξομοιωτή, ο εξομοιωτής ανοίγει και τρέχει η εφαρμογή μας. Παρατηρούμε ότι το όνομα της εφαρμογής στη μπάρα είναι MyFirstProject και το πεδίο κειμένου στην οθόνη της κινητής συσκευής είναι Hello world! 18
20 Σημειώσεις Android Φόρτωμα ήδη υπάρχουσας εφαρμογής Εάν έχουμε μια εφαρμογή η οποία είχε δημιουργηθεί με τον προηγούμενο σύστημα ανάπτυξης (Eclipse-adt bundle), την κάνουμε Import στο Android Studio. Από την αρχική οθόνη επιλέγοντας Import project(eclipse ADT, Gradle) ή από μέσα επιλέγοντας Import Ptroject. Εγκατάσταση του Genymotion Κατέβασμα από: Μετά την εγκατάσταση, εάν ζητηθεί License Key, θα πρέπει να δηλώσετε ότι πρόκειται για Personal Use. Στη συνέχεια μπορούμε να δημιουργήσουμε κάποιο virtual device με το Add. 19
21 Ιωάννης Έλληνας Από τη λίστα που παρέχεται επιλέγουμε αυτό που θέλουμε (μην ξεχνάμε ότι για λόγους ταχύτητας η οθόνη δεν πρέπει να έχει μεγάλη ανάλυση). Ολοκληρώνουμε τη δημιουργία της εικονικής συσκευής. 20
22 Σημειώσεις Android Η εικονική συσκευή φορτώνεται και θα εμφανίζεται πλέον στην κεντρική οθόνη του Genymotion. Επιλέγουμε το πλήκτρο Settings ADB Use custom Android SDK tools, όπου πρέπει να ορίσουμε το path του Android SDK σε μορφή C:\Users\Nick\AppData\Local\Android\sdk 21
23 Ιωάννης Έλληνας Ανοίγουμε το Android Studio και επιλέγουμε File Settings. Στο αναδυόμενο παράθυρο επιλέγουμε Plugins Android NDK Support Browse repositories. 22
24 Σημειώσεις Android Στη λίστα που ανοίγει επιλέγουμε το Genymotion και με δεξί κλικ κάνουμε Download and Install. Κάνουμε επανεκκίνηση του Android Studio. 23
25 Ιωάννης Έλληνας Παρατηρούμε στη μπάρα συντομεύσεων το εικονίδιο του Genymotion. Επιλέγουμε το εικονίδιο και μας ζητά να εισάγουμε το path του Genymotion, το οποίο πρέπει να είναι της μορφής: C:\Program Files\Genymobile\Genymotion. Επιλέγοντας ξανά το ίδιο εικονίδιο πρέπει να εμφανίζεται η εικονική συσκευή. 24
26 Σημειώσεις Android Την επιλέγουμε και πατάμε το πλήκτρο Start. Η συσκευή αυτή θα φαίνεται σαν επιλογή κάθε φορά που θα τρέχετε μια εφαρμογή. Οι άλλες επιλογές είναι ο emulator του Android Studio και η κινητή μας συσκευή που είναι συνδεδεμένη στο USB του υπολογιστή. Εάν εκτελέσουμε την εφαρμογή μας πατώντας το Run app στη γραμμή εργαλείων του Android Studio, θα εμφανιστεί στον Genymotion emulator: 25
27 Ιωάννης Έλληνας 26
28 Σημειώσεις Android Περιήγηση στο Android Studio Είδαμε την οθόνη του Android Studio όταν επιλέξουμε να ανοίξουμε μια υπάρχουσα εφαρμογή ή μια νέα εφαρμογή. Ας περιηγηθούμε στο Android Studio. Project Manager Ας αναλύσουμε την εφαρμογή εξετάζοντας τον Project Manager που εμφανίζεται στο επάνω αριστερό μέρος. Το AndroidManifest.xml είναι το κεντρικό αρχείο xml των εφαρμογών μας επειδή περιέχει βασικές ρυθμίσεις και λειτουργίες. Είναι ένα περιγραφικό αρχείο xml το οποίο περιέχει τα συστατικά στοιχεία της εφαρμογής, όπως είναι οι δραστηριότητες, οι υπηρεσίες παρασκηνίου, οι προθέσεις, τα φίλτρα προθέσεων, οι άδειες χρήσης άλλων εφαρμογών, κλπ. Ο φάκελος java περιέχει το αρχείο MainActivity.java που αποτελεί την κύρια δραστηριότητα (activity) του project μας. Σε αυτόν τον φάκελο θα προστίθενται και νεότερα τμήματα κώδικα που ενδεχομένως θα αναπτυχθούν στη διάρκεια του μαθήματος. Ο φάκελος res περιέχει τους διαφόρους πόρους (resources), όπως εικονίδια, GUI layouts. Ο φάκελος res drawable περιέχει τις εικόνες (PNG, JPEG, etc.) που χρησιμοποιούνται στην εφαρμογή σε διάφορες αναλύσεις (mdpi, hdpi, xhdpi, κλπ). 27
29 Ιωάννης Έλληνας Ο φάκελος res layout περιέχει τα xml αρχεία τα οποία είναι υπεύθυνα για την εμφάνιση κάθε οθόνης της εφαρμογής μας. Στην συγκεκριμένη περίπτωση το activity_main.xml που αντιστοιχίζεται στην MainActivity.java περιέχει πληροφορίες για την εμφάνιση της οθόνης της κεντρικής μας δραστηριότητας. Ο φάκελος res mipmap περιέχει το εικονίδιο της εφαρμογής (launcher icon) σε διάφορες αναλύσεις συσκευών. Ο φάκελος res values είναι πολύ σημαντικός καθώς εκεί ορίζουμε όλες τις μεταβλητές που θα κάνει χρήση η εφαρμογή μας. Για κάθε τύπο μεταβλητής δημιουργείται ένα.xml αρχείο που περιέχει τα ονόματα και τις τιμές των αντίστοιχων μεταβλητών. Για παράδειγμα σε ένα project το strings.xml περιέχει όσες μεταβλητές τύπου string χρησιμοποιούνται στον κώδικα. Άλλα τέτοια αρχεία μπορεί να είναι το colors.xml για τα χρώματα, το styles.xml για το στυλ εμφάνισης. Μπορούμε να δημιουργήσουμε άλλα δικά μας αρχεία xml όπως το res/menu/ menu.xml για την εμφάνιση ενός μενού για την εφαρμογή μας, το res/raw/raw.xml για αρχεία γενικού σκοπού (π.χ. ένα αρχείο CSV με διάφορες πληροφορίες). Αρχείο Μανιφέστου UI Activity UI interface Αρχείο κειμένου 28
30 Σημειώσεις Android Gradle Scripts Google user friendly development and build system. Η δομή ενός αρχείου xml είναι: <κεντρικό αντικείμενο εμφάνισης root element > <τύπος αντικειμένου Ιδιότητα αντικειμένου = τιμή ιδιότητας. /> <!-- κλείσιμο του tag του αντικειμένου --> </ root element ><!-- κλείσιμο του tag του root element --> <! -- με αυτό τον τρόπο γράφουμε σχόλια --> Οι πόροι βρίσκονται στον φάκελο res/ του έργου και περιλαμβάνουν διάφορα χαρακτηριστικά της εφαρμογής, όπως συμβολοσειρές, χρώματα, διαστάσεις, εικονίδια, διατάξεις οθόνης για τις δραστηριότητες, κλπ. Χαρακτηριστικό στοιχείο των αρχείων που διαχειρίζονται πόρους είναι ότι έχουν επέκταση xml. Ανάκτηση του πόρου hello_world από το αρχείο strings.xml: String mname = getresources().getstring(r.string.hello_world); Αναφορά σε έναν πόρο από κάποιο άλλο αρχείο type]/[resource name] Ανάκτηση μιας συμβολοσειράς του συστήματος: String okay = Resources.getSystem().getString(android.R.string.ok); Αναφορά σε έναν πόρο του type]/[resource name] 29
31 Ιωάννης Έλληνας Ανάλυση πόρων 1. Αρχείο μανιφέστου <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android=" package="gr.mybook.myfirstproject"> <application android:allowbackup="true" android:supportsrtl="true" <activity android:name=".mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> </application> </manifest> Οι βασικές του λειτουργίες είναι: Ονομάζει το πακέτο Java της εφαρμογής το οποίο λειτουργεί ως αναγνωριστικό ID για την εφαρμογή ("gr.mybook.myfirstproject"). Περιγράφει τις δραστηριότητες, τις υπηρεσίες, τους broadcast receivers. Ονοματίζει τις κλάσεις που υλοποιεί καθένα από τα στοιχεία. Καθορίζει ποιες διαδικασίες θα υλοποιήσουν τα στοιχεία της εφαρμογής. Καθορίζει τα δικαιώματα που πρέπει να αιτηθεί η εφαρμογή για να αποκτήσει πρόσβαση σε προστατευμένα μέρη του API. Καθορίζει τα δικαιώματα που πρέπει να έχουν οι άλλοι για να αλληλεπιδρούν με την εφαρμογή. Δηλώνει τη μικρότερη έκδοση Android API που χρειάζεται η εφαρμογή. Εμπερικλείει την κλήση των βιβλιοθηκών με τις οποίες συνδέεται η εφαρμογή. Στο παραπάνω αρχείο, μερικά χαρακτηριστικά είναι: 30
32 Σημειώσεις Android <application>: Ορίζει τα χαρακτηριστικά της εφαρμογής μας. android:icon: Tο εικονίδιο της εφαρμογής μας. android:label: Το όνομα της εφαρμογής που θα εμφανίζεται στο χρήστη. Αυτό μπορεί να δίνεται με άμεσο τρόπο (android:label="myfirstproject") ή με έμμεσο τρόπο στο αρχείο strings.xml όπως παραπάνω. <activity>: Δηλώνει μια ενέργεια (activity) και στην προκειμένη περίπτωση αυτήν που είχαμε ήδη κατασκευάσει. Όλες οι ενέργειες πρέπει να είναι δηλωμένες διαφορετικά δεν θα είναι εκτελέσιμες. 2. Αρχείο κώδικα H MainActivity.java αποτελεί την κεντρική κλάση της εφαρμογής μας. Δημιουργία εφαρμογής package gr.mybook.myfirstproject; import android.support.v7.app.appcompatactivity; import android.os.bundle; public class MainActivity extends AppCompatActivity { protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); } Διάταξη οθόνης package gr.mybook.myfirstproject Το όνομα του πακέτου που δημιουργήθηκε αυτόματα όταν δημιουργήθηκε το project. import android.os.bundle Βιβλιοθήκη που θα γίνει χρήση της στην κύρια κλάση. import android.support.v7.app.appcompatactivity Οι βιβλιοθήκες υποστήριξης επιτρέπουν σε εφαρμογές που εκτελούνται σε παλαιότερες εκδόσεις της πλατφόρμας Android να υποστηρίζουν λειτουργίες διαθέσιμες σε νεότερες εκδόσεις της πλατφόρμας. 31
33 Ιωάννης Έλληνας public class MainActivity extends AppCompatActivity Δήλωση της κύριας κλάσης η οποία είναι υποκλάση της Δηλώνει ότι η συνάρτηση που επακολουθεί θα επικαλύψει την αντίστοιχη συνάρτηση που υπάρχει στην υπερκλάση που δηλώνεται με super. protected void oncreate(bundle savedinstancestate) Κλήση της συνάρτησης oncreate(). Οι δραστηριότητες έχουν τη δυνατότητα να αποκατασταθούν σε προηγούμενη κατάσταση χρησιμοποιώντας τα δεδομένα που είναι αποθηκευμένα σε αυτή τη δέσμη (π.χ. μετά από τερματισμό λόγω περιστροφής της συσκευής). setcontentview(r.layout.activity_main) Χρήση του αρχείου activity_main.xml σαν UI στην εφαρμογή. 3. Φάκελος εικονιδίων Στον φάκελο res/drawable υπάρχουν τα αρχεία εικονιδίων σε διάφορες αναλύσεις hdpi, -ldpi, -mdpi, -xhdpi, -xxhdpi. Η ανάκληση της εικόνας /res/drawable/name.png γίνεται ως εξής: BitmapDrawable myimage = (BitmapDrawable) getresources().getdrawable(r.drawable.name); Απόδοση της εικόνας name.png στο πλήκτρο ImageView1 της διάταξης οθόνης γίνεται ως εξής: ImageView myview = (ImageView) findviewbyid(r.id.imageview1); myview.setimageresource(r.drawable.name); 4. Αρχείο UI Το activity_main.xml που βρίσκεται στον φάκελο res layout περιέχει όλα εκείνα τα αντικείμενα τα οποία εμφανίζονται στην κεντρική οθόνη της εφαρμογής. Κάθε εντολή αντιπροσωπεύει ένα αντικείμενο ή κάποια ιδιότητά του. 32
34 Σημειώσεις Android <?xml version="1.0" encoding="utf-8"?> <android.support.constraint.constraintlayout xmlns:android=" xmlns:app=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".mainactivity"> <TextView android:layout_width="76dp" android:layout_height="wrap_content" android:text="hello World!" app:layout_constraintbottom_tobottomof="parent" app:layout_constraintleft_toleftof="parent" app:layout_constraintright_torightof="parent" app:layout_constrainttop_totopof="parent" app:layout_constraintvertical_bias="0.43" /> </android.support.constraint.constraintlayout> Το Root Element είναι το ConstraintLayout μέσα στο οποίο υπάρχουν όλα τα αντικείμενα που εμφανίζονται στην οθόνη. Τα layouts καθορίζουν τον τρόπο με τον οποίο τοποθετούνται τα αντικείμενα στην οθόνη. Ορίζεται το πλάτος και το ύψος του layout να είναι στο μέγεθος της οθόνης της συσκευής. Ακολουθεί ένα αντικείμενο τύπου TextView το οποίο καλείται πεδίο κειμένου. Στη συνέχεια ορίζεται η ταυτότητά του (android:id ). ορίζει νέα μεταβλητή, ενώ ψάχνει να βρει ήδη δηλωθείσα μεταβλητή. Ορίζονται οι διαστάσεις του, με το πλάτος 76 dp (density independent pixels) και το ύψος με τη δήλωση wrap_content που σημαίνει όσο ορίζει το ύψος του κειμένου. Στη συνέχεια δηλώνεται το κείμενο με άμεσο ή έμμεσο τρόπο. Οι υπόλοιπες δηλώσεις αφορούν τη θέση του πεδίου κειμένου στην οθόνη της συσκευής. Αντί του άμεσου τρόπου απόδοσης του κειμένου προτιμάται ο έμμεσος τρόπος δίνοντας την εντολή: 33
35 Ιωάννης Έλληνας Στο αρχείο strings.xml θα πρέπει να προσθέσουμε το str_1 : <string name= str_1 >Hello World!</string> Η γραφική όψη του xml αρχείου είναι όπως φαίνεται στην παρακάτω εικόνα: widgets Οθόνη Χαρακτηριστικά 5. Αρχείο μενού Δημιουργούμε τον φάκελο res/menu και μέσα σε αυτόν το αρχείο main.xml το οποίο δημιουργεί στην οθόνη της συσκευής το μενού επιλογών (Options Menu) όταν πατηθεί το πλήκτρο MENU. Στο συγκεκριμένο το περιεχόμενο του μενού είναι οι επιλογές: Settings, Help, Info. 34
36 Σημειώσεις Android <menu xmlns:android = " > <item android:id = "@+id/action_settings" android:orderincategory = "100" android:showasaction ="never" android:title = "@string/action_settings"/> <item android:id = "@+id/info" android:title = "Info" /> <item android:id = "@+id/help" android:title = "Help" /> </menu> Ο κώδικας που πρέπει να υπάρχει στην κύρια δραστηριότητα για την κλήση του μενού public boolean oncreateoptionsmenu(menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getmenuinflater().inflate(r.menu.main, menu); return true; } 35
37 Ιωάννης Έλληνας Εάν θέλουμε η επιλογή ενός στοιχείου του μενού να πραγματοποιεί κάποια ενέργεια, θα πρέπει να προστεθεί στον κώδικα της κύριας δραστηριότητας: public boolean onoptionsitemselected(menuitem item) { switch (item.getitemid()) { case R.id.info: startactivity(new Intent(this, Info.class)); return true; case R.id.help: startactivity(new Intent(this, Help.class)); return true; case R.id.action_settings: startactivity(new Intent(this, ActionSettings.class)); return true; default: return super.onoptionsitemselected(item); } } Κάθε επιλογή οδηγεί σε μια νέα δραστηριότητα (νέα κλάση). 6. Αρχείο στυλ Στον φάκελο res/values υπάρχει το αρχείο styles.xml το οποίο παρέχει το στυλ μιας όψης ή μιας δραστηριότητας. Όταν αφορά μια όψη αναφέρεται με το style, ενώ όταν αφορά τη δραστηριότητα αναφέρεται με το theme. 7. Αρχείο χρωμάτων Στον φάκελο res/values μπορεί να δημιουργηθεί το αρχείο χρωμάτων colors.xml. <?xml version = "1.0" encoding = "utf-8"?> <resources> <color name = background_color >#ffe4e1</color> <color name = myview_color >#cdc0b0</color> </resources> Η ανάκληση ενός χρώματος με κώδικα γίνεται ως εξής: 36
38 Σημειώσεις Android int mycolor = getresources().getcolor(r.color.name); Αποσφαλμάτωση Στο παράθυρο Logcat εμφανίζονται μηνύματα κατά την εκτέλεση μιας εφαρμογής. Με αυτόν τον τρόπο μπορούμε να ελέγχουμε την ορθή εκτέλεση του κώδικά μας προκαλώντας εμφανίσεις μηνυμάτων. Οι κατηγορίες είναι: Log.e() - Καταγραφή σφαλμάτων, Log.w() - Καταγραφή προειδοποιήσεων Log.i() - Καταγραφή πληροφοριών, Log.d() - Καταγραφή μηνυμάτων αποσφαλμάτωσης Log.v() - Καταγραφή όλων των περιπτώσεων Η δήλωση στον κώδικα γίνεται ως εξής: private static final String TAG = gr.mybook.myfirstproject ; Η χρήση στον κώδικα γίνεται ως εξής: Log.i(TAG, We are within the oncreate method ); Για παράδειγμα μπορούμε να καταλάβουμε ότι έχει εκτελεστεί η δραστηριότητα MainActivity με τον εξής τρόπο: import android.util.log; public class MainActivity extends Activity { private static final String TAG = gr.mybook.myfirstproject ; protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); Log.i(TAG, We are within the oncreate method ); } 37
39 Ιωάννης Έλληνας Μπορούμε να δημιουργήσουμε ένα φίλτρο στην οθόνη Logcat έτσι ώστε να παρουσιάζονται μόνο τα μηνύματα που επιθυμούμε. Regex = Regular Expressions Μπορούμε να πραγματοποιήσουμε αποσφαλμάτωση (Debbugging) σε μια εφαρμογή μας αν για την εκτέλεση της εφαρμογής επιλέξουμε το Debug app από τη γραμμή εργαλείων του Android Studio. Η οθόνη αποσφαλμάτωσης είναι: Μπορούμε σε διάφορα σημεία της εφαρμογής μας να τοποθετήσουμε breakpoints για να εξετάζουμε κατά τμήματα την ορθή εκτέλεση του προγράμματος. Στην οθόνη αποσφαλμάτωσης μπορούμε να δούμε διαδικασίες, μεταβλητές, κλπ. 38
40 Σημειώσεις Android Διατάξεις οθόνης (Layouts) Τα συνηθισμένα layouts, δηλαδή οι διατάξεις οθόνης μέσα στις οποίες θα τοποθετηθούν αντικείμενα, είναι LinearLayout και RelativeLayout. Το Android Studio περιέχει ένα νέο τύπο layout το οποίο καλείται ConstraintLayout. Είναι μια δυναμική νέα κλάση η οποία μας επιτρέπει να διατάξουμε τα child views χρησιμοποιώντας 'περιορισμούς' σχετικά με τις θέσεις μεταξύ διαφορετικών όψεων που βρίσκονται στη διάταξή μας. Η συνεισφορά του είναι να απλοποιηθεί η σχεδίαση σύνθετων όψεων οι οποίες να εκτελούνται πιο γρήγορα. Το LinearLayout είναι μια διάταξη που ευθυγραμμίζει όλα τα child views σε μια κατεύθυνση, οριζόντια ή κάθετη (ιδιότητα android:orientation).οι όψεις τοποθετούνται η μία μετά την άλλη καταλαμβάνοντας ολόκληρη τη γραμμή ή στήλη ενώ παράλληλα αναγνωρίζει τα περιθώρια μεταξύ τους και τη θέση τους (αριστερά, κέντρο, δεξιά). Το RelativeLayout είναι μια διάταξη που τοποθετεί μια όψη σε σχέση με τη θέση μιας άλλης ή σε σχέση με την όλη διάταξη. Επομένως, μπορεί να αποφεύγεται η χρήση εμφωλευμένων διατάξεων LinearLayout για την υλοποίηση μιας σύνθετης διάταξης, απλοποιώντας τη σχεδίαση και κάνοντας την εφαρμογή πιο γρήγορη. 39
41 Ιωάννης Έλληνας Όταν το περιεχόμενο μιας διάταξης οθόνης είναι δυναμικό και όχι εκ των προτέρων γνωστό, μπορεί να χρησιμοποιηθεί μια υποκλάση της διάταξης AdapterView ώστε να δημιουργούνται όψεις κατά την εκτέλεση της εφαρμογής. Το αντικείμενο Adapter αντλεί τα δεδομένα που πρόκειται να εμφανιστούν στην οθόνη και τα μετατρέπει σε όψεις για τη διάταξη οθόνης. Τέτοιες διατάξεις οθόνης είναι η ListView και η GridView. O ArrayAdapter μετατρέπει κάθε στοιχείο ενός array σε ένα TextView με την κλήση της συνάρτησης tostring(). Έτσι αν έχουμε έναν πίνακα με αλφαριθμητικά τα οποία πρόκειται να εμφανιστούν σε ένα ListView: ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.r.layout.simple_list_item_1, mystringarray); ListView listview = (ListView) findviewbyid(r.id.listview); listview.setadapter(adapter); ConstraintLayout Αυτή η διάταξη οθόνης μας επιτρέπει να δημιουργούμε σύνθετες και μεγάλες διατάξεις οθόνης χωρίς εμφωλευμένες διατάξεις. Είναι παρόμοια με την RelativeLayout ως προς τη διάταξη των όψεων σε σχέση με τη διάταξη που ανήκουν και τις άλλες όψεις αλλά είναι περισσότερο ευέλικτη. Τα χαρακτηριστικά της είναι τα εξής: 40
42 Σημειώσεις Android Η θέση μιας όψης στη διάταξη καθορίζεται από τουλάχιστον έναν περιορισμό (constraint) οριζόντια και κάθετα. Κάθε περιορισμός αντιπροσωπεύει μια σύνδεση ή ευθυγράμμιση με μια άλλη όψη, τη γονική διάταξη ή μια αόρατη κατευθυντήρια γραμμή. Εάν μια όψη δεν έχει περιορισμούς εμφανίζεται επάνω και αριστερά στην οθόνη. Για παράδειγμα, η όψη C δεν έχει κάθετο περιορισμό και επομένως θα εμφανιστεί ευθυγραμμισμένη με την Α αλλά στο επάνω μέρος της οθόνης. Ο Layout Editor δείχνει τους μη υπάρχοντες περιορισμούς στη γραμμή εργαλείων. Για να δούμε τα σφάλματα πρέπει να πατήσουμε Show Warnings and Errors. Επίσης μπορεί να τοποθετήσει αυτόματα τους περιορισμούς με το Autoconnect and infer constraints. Τοποθετούμε μια όψη μέσα στη διάταξη οθόνης σύροντάς την από την παλέτα όψεων. 41
43 Ιωάννης Έλληνας Παρουσιάζεται σαν ένα ορθογώνιο με τετράγωνες λαβές αλλαγής μεγέθους (resizing handles) στις κορυφές και στρογγυλές λαβές περιορισμού (constraint handles) στις πλευρές. Σύρουμε την όψη από τα constraint handles και το τοποθετούμε σε σχέση με τη διάταξη οθόνης ή με άλλη όψη. Τέλος, πατάμε Create a connection. Όταν τοποθετηθεί, ο Editor δίνει ένα προκαθορισμένο περιθώριο (margin) για το διαχωρισμό των δύο οντοτήτων. Για την κατάργηση ενός περιορισμού επιλέγουμε την όψη και πατάμε το constraint handle. Για να απομακρύνουμε όλους τους περιορισμούς πατάμε Delete constraints. Horizontal constraint to the parent. Ορισμός της απόστασης με το περιθώριο (margin). Περιορισμός σε σχέση με άλλη όψη. Οι Β και C έχουν μόνο έναν περιορισμό. Η όψη Β ευθυγραμμίζεται με την Α αριστερά. Χρησιμοποιούμε και το δεξί handle αν θέλουμε να κεντραριστούν. Μπορούμε να δημιουργήσουμε μια απόσταση από την αριστερή πλευρά της Α επιλέγοντας τιμή για το περιθώριο. 42
44 Σημειώσεις Android Ευθυγράμμιση του κειμένου δύο όψεων. Για τη δημιουργία ενός περιορισμού κειμένου (baseline constraint) επιλέγουμε την όψη και "Edit Baseline. Στη συνέχεια συνδέουμε τις 2 baselines. Μπορούμε να τοποθετήσουμε έναν οδηγό (guideline) και ως προς αυτόν μια όψη καθορίζοντας το περιθώριο. Η θέση του οδηγού μπορεί να είναι ως προς τη διάταξη σε dp ή %. Πατάμε Guidelines και μετά Add Vertical Guideline ή Add Horizontal Guideline. Τη σύρουμε στην επιθυμητή θέση και πατάμε στον κύκλο για να ορίσουμε τη μονάδα μέτρησης. Μπορούμε να τοποθετήσουμε ένα φράγμα (barrier) και μέσα σε αυτό όψεις. Το barrier αλλάζει θέση ανάλογα με τις όψεις που βρίσκονται σε αυτό. Χρησιμοποιείται για να ορίσουμε περιορισμό σε μια όψη (π.χ. την C) ως προς μια ομάδα όψεων. Πατάμε Guidelines Add Vertical/Horizontal Barrier. Στο παράθυρο Component Tree επιλέγουμε τις όψεις και τις σύρουμε στο barrier. Επιλέγουμε το barrier από το Component Tree, ανοίγουμε το παράθυρο Attributes και επιλέγουμε το barrierdirection. Μπορούμε να τοποθετήσουμε περιορισμούς για τις όψεις μέσα στο barrier ως προς αυτό όπως επίσης και Guideline για την ελάχιστη απόσταση των όψεων από αυτό. 43
45 Ιωάννης Έλληνας Όταν τοποθετούμε περιορισμούς και στις δύο πλευρές μιας όψης (και το μέγεθος της όψης είναι fixed ή wrap content ), η όψη κεντράρεται ως προς το μέσον δηλαδή αποκτά bias 50%. Το bias μεταβάλλεται κινώντας την όψη ή σύροντας το slider στο παράθυρο των Ιδιοτήτων (Attributes). 1. Size ratio. 2. Delete constraint 3. Height/Width mode 4. Margins 5. Constraint bias Τα σύμβολα στο Height/Width mode είναι: Fixed = Συγκεκριμένες διαστάσεις ή αλλαγή μεγέθους (view resizing). Wrap Content = Η διάσταση είναι όσο και το περιεχόμενο. Match Constraints = Η όψη περιορίζεται από τα ορισθέντα constraints λαμβάνοντας υπόψη τα περιθώρια. Σε αυτήν την περίπτωση μπορεί να υπάρχουν οι εξής ιδιότητες: layout_constraintwidth_default spread: Επεκτείνει την όψη όσο επιτρέπουν τα constraints (default). 44
46 Σημειώσεις Android wrap: Επεκτείνει την όψη όσο τα περιεχόμενα της όψης αλλά επιτρέπει στην όψη να είναι μικρότερη εάν το επιτρέπουν οι περιορισμοί, σε αντίθεση με την επιλογή Wrap Content. layout_constraintwidth_min Διάσταση σε dp για το ελάχιστο πλάτος της όψης. layout_constraintwidth_max Διάσταση σε dp για το μέγιστο πλάτος της όψης. Το μέγεθος μιας όψης μπορεί να είναι αναλογία (π.χ. 16:9) εάν μια τουλάχιστον διάσταση τεθεί σαν match constraints (0 dp). Πατάμε Toggle Aspect Ratio Constraint (επιλογή 1 στην παραπάνω εικόνα των ιδιοτήτων) και επιλέγουμε την αναλογία. Για τον καθορισμό του περιθωρίου στις όψεις πατάμε Margin. Από τις ιδιότητες κάθε όψης μπορεί να τοποθετηθεί το περιθώριο της. Σε μια ομάδα όψεων μπορούμε να δημιουργήσουμε αλυσίδα (chain). 45
47 Ιωάννης Έλληνας 1 = Spread Ομοιόμορφη κατανομή μετά τον υπολογισμό των περιθωρίων. 2 = Spread Inside η πρώτη και τελευταία όψη ακολουθούν τους περιορισμούς και οι ενδιάμεσες κατανέμονται ομοιόμορφα. 3 = Weighted Όταν η αλυσίδα είναι σε μία από τις παραπάνω μορφές, οι ενδιάμεσες αποστάσεις καλύπτονται θέτοντας τις όψεις σε match constraints (0 dp). Η κάλυψη μπορεί να είναι ομοιόμορφη ή με βάρος χρησιμοποιώντας τα layout_constrainthorizontal_weight ή layout_constraintvertical_weight. 4 = Packed Οι όψεις γίνονται διαδοχικές αφού υπολογιστούν τα περιθώρια. Η αλυσίδα γίνεται επιλέγοντας τις όψεις σύροντας το ποντίκι γύρω από αυτές, στη συνέχεια πάνω σε μία όψη με δεξί κλικ επιλέγουμε Center Horizontally ή Center Vertically και τέλος με το. Τα modes επιλέγονται πατώντας σε μια όψη διαδοχικά την αλυσίδα. Για τη δημιουργία αυτόματων περιορισμών σύρουμε τις όψεις στο σημείο που επιθυμούμε και πατάμε το Infer Constraints. Το Autoconnect δημιουργεί τουλάχιστον δύο περιορισμούς σε κάθε όψη που επιλέγεται σε σχέση μόνο με τη γονική διάταξη, όταν είναι ΟΝ. Πρακτική εφαρμογή: Ανοίξτε την εφαρμογή constraint-layout-start και ακολουθήστε το παράδειγμα που υπάρχει στον ιστότοπο: 46
48 Σημειώσεις Android Google Firebase Η Google Firebase είναι μια πλατφόρμα ανάπτυξης mobile και web εφαρμογών, με εργαλεία και υποδομές τα οποία βοηθούν τους προγραμματιστές. Αρχικά, η Firebase ήταν μια βάση δεδομένων πραγματικού χρόνου (real time database), η οποία παρείχε ένα API που επέτρεπε στους προγραμματιστές να αποθηκεύουν και να συγχρονίζουν δεδομένα μεταξύ πολλαπλών clients. Σήμερα έχει γίνει πλέον μια πλήρης σουίτα για ανάπτυξη εφαρμογών 1 : Analytics Firebase Analytics: Παρέχει μετρήσεις και στατιστικά σχετικά με τη χρησιμοποίηση της εφαρμογής και τους μηνιαία ενεργούς χρήστες ανάλογα με το φύλο, την ηλικία και την περιοχή. Develop Authentication: Καθιστά δυνατή την αυθεντικοποίηση των χρηστών μόνο με client-side κώδικα, έχοντας το back-end ήδη υλοποιημένο. Επιτρέπει το login, εκτός από και κωδικό, και με εξωτερικούς παρόχους login (Facebook, Github, Twitter, Google). Realtime Database: Είναι μία nosql βάση δεδομένων αποθηκευμένη στο Cloud σε μορφή JSON. Αντί για κλασσικά HTTP Requests χρησιμοποιεί συγχρονισμό δεδομένων, επιτρέποντας την ενημέρωση οποιασδήποτε συσκευής που τρέχει την εκάστοτε εφαρμογή μέσα σε milliseconds. Η πρόσβαση στη βάση μπορεί να περιοριστεί από τον προγραμματιστή μέσω κανόνων ασφάλειας (Security Rules). 1 Ελπίδα Ρουκά, «Σχεδίαση και Υλοποίηση κοινωνικού δικτύου που επιτρέπει στους χρήστες να μοιράζονται την τοποθεσία τους με άλλους χρήστες σε περιπτώσεις κινδύνου», Διπλωματική εργασία, ΕΜΠ, Ιούλιος
49 Ιωάννης Έλληνας Storage: Προσφέρει ασφαλή μεταφόρτωση και λήψη αρχείων για τις εφαρμογές του Firebase, ανεξάρτητα της ποιότητας δικτύου. Χρησιμοποιείται για αποθήκευση αρχείων εικόνας, ήχου και βίντεο των χρηστών. Hosting: Χρησιμοποείται σε Web εφαρμογές, για την ανάπτυξη και κυκλοφορία στατικού περιεχομένου (π.χ. αρχεία CSS, HTML, JavaScript) σε ένα δίκτυο διανομής περιεχομένου (ContentDelivery Network, CDN) μέσω HTTPS/SSL. Cloud Functions: Δίνει τη δυνατότητα στον προγραμματιστή να γράφει back-end κώδικα που ενεργοποιείται αυτόματα όταν συμβαίνουν συγκεκριμένες αλλαγές ή αιτήσεις στη βάση. Ο κώδικας αποθηκεύεται στο Google Cloud. Test Lab: Παρέχει μία υποδομή δοκιμών (testing) για εφαρμογές Android. Τα αποτελέσματα των δοκιμών (screenshots, logs, videos) γίνονται διαθέσιμα στον προγραμματιστή στην κονσόλα του Firebase. Βοηθά ιδιαίτερα στην ανεύρεση προβλημάτων που οφείλονται σε κάποιο συγκεκριμένο συνδυασμό συσκευής λογισμικού. Crash Reporting: Δημιουργεί λεπτομερείς αναφορές (reports) για σφάλματα που συμβαίνουν στο πρόγραμμα. Performance Monitoring: Βοηθά τον προγραμματιστή να διεισδύσει στα προβλήματα επίδοσης της εφαρμογής του. Παρέχει ένα SDK συλλογής δεδομένων επίδοσης τα οποία έπειτα παρουσιάζονται και αναλύονται στην κονσόλα. Firebase Cloud Messaging (FCM): Εργαλείο για αποστολή μηνυμάτων μεταξύ των χρηστών, που διέρχονται από τον server της εφαρμογής, καθώς και απομακρυσμένων ειδοποιήσεων (remote notifications) ως απόκριση σε ορισμένα γεγονότα. Grow Notifications: Δωρεάν υπηρεσία αποστολής μηνυμάτων και ειδοποιήσεων από τον προγραμματιστή σε συγκεκριμένες συσκευές με σκοπό το testing. Remote Configuration: Υπηρεσία που καθιστά ικανούς τους προγραμματιστές να αλλάξουν τη συμπεριφορά και τα γραφικά της εφαρμογής χωρίς να απαιτηθεί από το χρήστη να εκτελέσει κάποιο update. Dynamic Links: Σύνδεσμοι προς το περιβάλλον της εφαρμογής που συμπεριφέρονται ανάλογα με τη συσκευή στην οποία βρίσκεται ο χρήστης, για παράδειγμα Mobile View ή Desktop View της εφαρμογής. Ακόμη, σε περίπτωση που η εφαρμογή δεν είναι εγκατεστημένη, μπορούν να παραπέμπουν το χρήστη στο App Store. 48
50 Σημειώσεις Android Earn AdMob: Πλατφόρμα τοποθέτησης διαφημίσεων εντός της εφαρμογής που καθιστά τον προγραμματιστή ικανό να αποκτήσει εισόδημα μέσω αυτής. Χρήση της βάσης δεδομένων με κινητή συσκευή Συνδεόμαστε με την Firebase: Δημιουργούμε ένα νέο project (π.χ. mybase1) με το Add project. 49
51 Ιωάννης Έλληνας Δημιουργούμε στο Android Studio μια εφαρμογή για να δοκιμάσουμε τη λειτουργία της βάσης δεδομένων Firebase. Ονομάζουμε την εφαρμογή myfirebase και έχει το παρακάτω UI. Πατώντας WRITE, ότι υπάρχει στο πεδίο κειμένου θα αποθηκεύεται στη βάση δεδομένων ενώ πατώντας READ ότι υπάρχει στη βάση δεδομένων (στο συγκεκριμένο κλειδί) εμφανίζεται στην ετικέτα κειμένου. Στην οθόνη του project που εμφανίζεται πατάμε Add Firebase to you Android App. Παρουσιάζονται τα βήματα για τη σύνδεση της βάσης δεδομένων με την εφαρμογή μας. 1. Register App: Τοποθετούμε το package name της εφαρμογής μας, δηλαδή το gr.mybook.myfirebase. Πατάμε το πλήκτρο Register app. 2. Download config file: Κατεβάζουμε το google-services.json και το τοποθετούμε στο root της εφαρμογής μας (Οθόνη με επιλογή του Project). Πατάμε Next. 3. Add Firebase SDK: Προσθέτουμε στο αρχείο build.gradle (Project: myfirebase) (που υπάρχει στην οθόνη με ένδειξη Andoid) το: classpath 'com.google.gms:google-services:4.0.0' και στο αρχείο build.gradle (Module: 50
52 Σημειώσεις Android app) τα: implementation 'com.google.firebase:firebase-core:16.0.0' και implementation 'com.google.firebase:firebase-database:16.0.1' 4. Στο τέλος του αρχείου προσθέτουμε το: apply plugin: 'com.google.gms.googleservices'. 51
53 Ιωάννης Έλληνας 5. Στη συνέχεια πατάμε Sync Now στο Android Studio και παρατηρούμε αν υπάρχουν σφάλματα. Αν υπάρχουν σφάλματα δοκιμάζουμε προηγούμενες εκδόσεις, όπως 'com.google.gms:google-services:3.1.0' ή 'com.google.firebase:firebase-core:10.2.6'. Πατάμε Next. 6. Run your app to verify installation. Κάνουμε skip. 7. Συμπληρώνουμε τον κώδικα στην εφαρμογή μας με την ενέργεια των πλήκτρων. Πρέπει από τον SDK Manager και τα SDK Tools να έχουμε κατεβάσει τα Google Play services. 8. Στην κονσόλα firebase μετά τη δημιουργία της βάσης και τη σύνδεση με κάποια συγκεκριμένη εφαρμογή Android: Πατάμε Realtime Database Get started Start in test mode Enable. Εμφανίζεται η βάση δεδομένων στην οποία θα παρατηρούμε τα στοιχεία της. 52
54 Σημειώσεις Android 9. Ο κώδικας της εφαρμογής: package gr.mybook.myfirebase; import android.support.annotation.nonnull; import android.support.v7.app.appcompatactivity; import android.os.bundle; import android.view.view; import android.widget.button; import android.widget.edittext; import android.widget.textview; import com.google.firebase.database.datasnapshot; import com.google.firebase.database.databaseerror; import com.google.firebase.database.databasereference; import com.google.firebase.database.firebasedatabase; import com.google.firebase.database.valueeventlistener; public class MainActivity extends AppCompatActivity { TextView textview1; EditText edittext1; Button btn1, btn2; FirebaseDatabase fbdatabase; DatabaseReference protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); textview1=(textview)findviewbyid(r.id.textview1); edittext1=(edittext)findviewbyid(r.id.edittext1); fbdatabase=firebasedatabase.getinstance(); fbref=fbdatabase.getreference("mykey1"); } 53
55 Ιωάννης Έλληνας public void read(view view){ fbref.addlistenerforsinglevalueevent(new ValueEventListener() public void ondatachange(@nonnull DataSnapshot datasnapshot) { textview1.settext(datasnapshot.getvalue().tostring()); public void oncancelled(@nonnull DatabaseError databaseerror) { } } }); } public void write(view view){ fbref.setvalue(edittext1.gettext().tostring()); } Οι κλάσεις που χρησιμοποιούνται για τη βάση δεδομένων: FirebaseDatabase fbdatabase; DatabaseReference fbref; Ορισμός των αντικειμένων τους: fbdatabase=firebasedatabase.getinstance(); fbref=fbdatabase.getreference("mykey1"); Το mykey1 είναι το κλειδί χαρακτηρισμού στη βάση. Ο ακροατής γεγονότων (αν κάτι αλλάξει στη βάση) χρησιμοποιείται στη μέθοδο ανάγνωσης, όπου η τιμή από τη βάση δεδομένων καταχωρείται στο TextView. Στη μέθοδο εγγραφής, διαβάζεται το πεδίο κειμένου και καταχωρείται στη βάση. Push Notifications FCM Η Firebase, μέσω του FCM (Firebase Cloud Messaging) λειτουργεί σαν μονάδα μεταξύ του διακομιστή σας και των συσκευών που θα λαμβάνουν τις ειδοποιήσεις push που δημιουργείτε. Ο διακομιστής σας ενημερώνει το Firebase ότι πρέπει να αποσταλεί μια ειδοποίηση. Στη συνέχεια, η Firebase πραγματοποιεί τη λειτουργία αυτή για να δημοσιεύσει την ειδοποίηση. 54
56 Σημειώσεις Android Δημιουργούμε μια εφαρμογή στο Android Studio: MyFCM. Πηγαίνουμε στη Firebase Console: Επιλέγουμε το Add project (π.χ. mybase2) και το δημιουργούμε. Συνδέουμε τη Firebase με την εφαρμογή μας. Επιλέγουμε το εικονίδιο Android και ακολουθούμε τα εξής βήματα: 55
57 Ιωάννης Έλληνας 1. Register App: Εγγράφουμε το package name: gr.mybook.myfcm και επιλέγουμε Register app. 2. Download Config Files: Επιλέγουμε το κουμπί Download googleservices.json για να κατεβάσουμε ένα JSON αρχείο. Το αρχείο αυτό αποθηκεύεται στον φάκελο app της εφαρμογής μας. Επιλέγουμε Next. 3. Add Firebase SDK: Ανοίγουμε το αρχείο <project> build.gradle και ενσωματώνουμε τον κώδικα: classpath 'com.google.gms:google-services:4.1.0' Στη συνέχεια ανοίγουμε το αρχείο <app> build.gradle και ενσωματώνουμε τον κώδικα: dependencies { // Add this line implementation 'com.google.firebase:firebase-core:16.0.3' //Firebase Messaging library for Sending push Notifications 56
58 Σημειώσεις Android implementation 'com.google.firebase:firebasemessaging:17.3.0' } Στο τέλος του αρχείου προσθέτουμε τον κώδικα: // Add to the bottom of the file apply plugin: 'com.google.gms.google-services' 4. Ολοκληρώνοντας κάνουμε Sync την εφαρμογή. Επιστρέφουμε στην Firebase Console και επιλέγουμε το Cloud messaging. Πατάμε το SEND YOUR FIRST MESSAGE. Γράφουμε ένα μήνυμα και επιλέγουμε σαν app την εφαρμογή μας gr.mybook.myfcm. Με το Send Message ο server της Firebase στέλνει το push notification στο κινητό μας στο οποίο πρέπει να υπάρχει η εφαρμογή που δημιουργήσαμε. Μόλις πατήσουμε το push notification, τρέχει η εφαρμογή μας. Προφανώς πρέπει το κινητό μας να έχει πρόσβαση στο διαδίκτυο. 57
59 Ιωάννης Έλληνας Υπηρεσία εντοπισμού θέσης (GPS) Tο γνωστό σε όλους GPS (Global Positioning System) μιας κινητής συσκευής χρησιμοποιείται σε συνδυασμό με τους χάρτες της Google για την παροχή υπηρεσιών προσδιορισμού θέσης (LBS-Location Based Services). Οι υπηρεσίες αυτές μπορούν να προσδιορίσουν τη θέση μας, να χαράξουν πορεία για έναν προορισμό, να παρέχουν πληροφορίες για σημεία ενδιαφέροντος που είναι κοντά μας, κλπ. Η κύρια συνιστώσα της υπηρεσίας είναι ο LocationManager ο οποίος παρέχει APIs για τον καθορισμό της θέσης και όχι μόνο, όπως: Ερώτημα για τη λίστα όλων των παρόχων τοποθεσίας για την τελευταία γνωστή τοποθεσία χρήστη. Εγγραφή/Ακύρωση εγγραφής για περιοδικές ενημερώσεις της τρέχουσας τοποθεσίας του χρήστη από έναν πάροχο τοποθεσίας. Εγγραφή/Ακύρωση εγγραφής για την ενεργοποίηση πρόθεσης όταν η συσκευή βρίσκεται κοντά (καθορίζεται από την ακτίνα σε μέτρα) σε μια δεδομένη θέση lat/long. Η ενεργοποίηση γίνεται με τη μέθοδο getsystemservice(context.location_service), η οποία παρέχει ένα handle για την υπηρεσία. Το αντικείμενο Location αντιπροσωπεύει μια γεωγραφική θέση η οποία μπορεί να αποτελείται από γεωγραφικό πλάτος, γεωγραφικό μήκος, χρονική σφραγίδα και άλλες πληροφορίες όπως εκτροπή πορείας, υψόμετρο και ταχύτητα. Υπάρχουν οι 58
60 Σημειώσεις Android ακόλουθες σημαντικές μέθοδοι που μπορείτε να χρησιμοποιήσετε με το αντικείμενο Location για να λάβετε πληροφορίες σχετικά με τη θέση: float distanceto(location dest) - Επιστρέφει την κατά προσέγγιση απόσταση σε μέτρα μεταξύ της τοποθεσίας dest και της δεδομένης θέσης. float getaccuracy() Ακρίβεια θέσης σε μέτρα. double getaltitude() Ύψος σε μέτρα. float getbearing() Εκτροπή πορείας σε μοίρες. double getlatitude() Γεωγραφικό πλάτος σε μοίρες. double getlongitude() Γεωργικό μήκος σε μοίρες. float getspeed() Ταχύτητα σε m/s. boolean hasaccuracy() True εάν η θέση έχει ακρίβεια. boolean hasaltitude() - True εάν η θέση έχει ύψος. boolean hasbearing() - True εάν η θέση έχει εκτροπή. boolean hasspeed() - True εάν η θέση έχει ταχύτητα. void reset() Καθαρίζει τα περιεχόμενα της θέσης. void setaccuracy(float accuracy) Καθορίζει την ακρίβεια της θέσης σε μέτρα. void setaltitude(double altitude) Καθορίζει το ύψος σε μέτρα. void setbearing(float bearing) - Καθορίζει την εκτροπή πορείας σε μέτρα. void setlatitude(double latitude) Καθορίζει το γ.π. σε μοίρες. void setlongitude(double longitude) - Καθορίζει το γ.μ. σε μοίρες. void setspeed(float speed) - Καθορίζει την ταχύτητα σε m/s. String tostring() - Επιστρέφει μια συμβολοσειρά με περιγραφή αυτού του αντικειμένου. Για τη λήψη της τρέχουσας θέσης δημιουργούμε το αντικείμενο LocationClient, το οποίο συνδέουμε με την υπηρεσία προσδιορισμού θέσης με τη μέθοδο connect() και στη συνέχεια καλούμε τη μέθοδο getlastlocation(). Αυτή η μέθοδος επιστρέφει την πιο πρόσφατη θέση με τη μορφή αντικειμένου Location το οποίο περιέχει συντεταγμένες γεωγραφικού πλάτους και μήκους και άλλες πληροφορίες. Για να υπάρχει λειτουργικότητα στη δραστηριότητά μας με βάση την τοποθεσία, θα πρέπει να εφαρμόσουμε δύο διεπαφές (interfaces): GooglePlayServicesClient.ConnectionCallbacks GooglePlayServicesClient.OnConnectionFailedListener 59
61 Ιωάννης Έλληνας Αυτές οι διεπαφές παρέχουν τις εξής μεθόδους επανάκλησης: abstract void onconnected(bundle connectionhint) Καλείται όταν η υπηρεσία συνδέεται επιτυχώς με τον LocationClient. Για σύνδεση με τον client χρησιμοποιούμε τη μέθοδο connect(). abstract void ondisconnected() Καλείται όταν ο client αποσυνδέεται από την υπηρεσία. Για αποσύνδεση από τον client χρησιμοποιούμε τη μέθοδο disconnect(). abstract void onconnectionfailed(connectionresult result) καλείται όταν προκύπτει σφάλμα κατά τη σύνδεση του client με την υπηρεσία. Πρέπει να δημιουργήσουμε τον location client στη μέθοδο oncreate() της δραστηριότητάς και, στη συνέχεια, να τον συνδέσουμε στην onstart(), έτσι ώστε οι υπηρεσίες θέσης να διατηρούν την τρέχουσα θέση ενώ η δραστηριότητα είναι πλήρως ορατή. Θα πρέπει να αποσυνδέσουμε τον location client στη μέθοδο onstop(), έτσι ώστε όταν η εφαρμογή δεν είναι ορατή, οι υπηρεσίες θέσης δεν διατηρούν την τρέχουσα θέση. Αυτό βοηθά στην εξοικονόμηση ενέργειας μπαταρίας. Για την ανανέωση του εντοπισμού της θέσης, εκτός από τις παραπάνω διεπαφές, χρειάζεται επίσης η διεπαφή LocationListener. Αυτή η διεπαφή παρέχει την εξής μέθοδο επανάκλησης: abstract void onlocationchanged(location location) - Χρησιμοποιείται για τη λήψη ειδοποιήσεων από τον LocationClient όταν η θέση έχει αλλάξει. Το αντικείμενο LocationRequest χρησιμοποιείται για τη ρύθμιση παραμέτρων στην ανανέωση του εντοπισμού θέσης από τον LocationClient. setexpirationduration(long millis) Ορίζεται η διάρκεια αυτού του αιτήματος, σε χιλιοστά του δευτερολέπτου. setexpirationtime(long millis) Ορίζεται ο χρόνος λήξης του αιτήματος, σε χιλιοστά του δευτερολέπτου από την εκκίνηση. setfastestinterval(long millis) Ορίζεται το ταχύτερο διάστημα για ενημερώσεις τοποθεσίας, σε χιλιοστά του δευτερολέπτου. setinterval(long millis) Ορίζεται το επιθυμητό διάστημα για ενημερώσεις ενεργών τοποθεσιών σε χιλιοστά του δευτερολέπτου. setnumupdates(int numupdates) Ορίζεται ο αριθμός των ενημερώσεων τοποθεσίας. setpriority(int priority) - Ορίζεται η προτεραιότητα του αιτήματος. 60
62 Σημειώσεις Android Για παράδειγμα, αν μια εφαρμογή θέλει υψηλή ακρίβεια θέσης, θα πρέπει να δημιουργήσει μια αίτηση θέσης με setpriority(int) με PRIORITY_HIGH_ACCURACY και setinterval(long) σε 5 δευτερόλεπτα. Μπορούμε επίσης να χρησιμοποιήσουμε μεγαλύτερο χρονικό διάστημα και/ή άλλες προτεραιότητες όπως PRIORITY_LOW_POWER για να ζητήσουμε ακρίβεια σε επίπεδο πόλης. Όταν έχουμε το αντικείμενο Location, μπορούμε να χρησιμοποιήσουμε τη μέθοδο Geocoder.getFromLocation() για να λάβουμε μια διεύθυνση για ένα δεδομένο γεωγραφικό πλάτος και μήκος. Αυτή η μέθοδος είναι σύγχρονη και μπορεί να πάρει πολύ χρόνο για εκτέλεση, γι 'αυτό πρέπει να καλέσουμε τη μέθοδο από τη μέθοδο doinbackground() μιας κλάσης AsyncTask. Η AsyncTask πρέπει να χρησιμοποιηθεί ως υποκλάση η οποία θα αντικαταστήσει τη μέθοδο doinbackground(params...) για να εκτελέσει μια εργασία στο παρασκήνιο. Η μέθοδος onpostexecute(result) ενεργοποιείται στο νήμα UI αφού τελειώσει ο υπολογισμός στο παρασκήνιο και τη στιγμή εμφάνισης του αποτελέσματος. Υπάρχει μια ακόμα σημαντική μέθοδος διαθέσιμη στο AyncTask, η execute(params... params), η οποία εκτελεί την εργασία με τις καθορισμένες παραμέτρους. Για τη δημιουργία μιας εφαρμογής υπηρεσίας εντοπισμού θέσης πρέπει να λάβουμε υπ όψη τα εξής: Ενεργοποίηση του αντικειμένου χειρισμού της υπηρεσίας (LocationManager). // Reference to the system Location Manager LocationManager locationmanager = (LocationManager) this.getsystemservice(context.location_service); 61
63 Ιωάννης Έλληνας Ενεργοποίηση του ακροατή γεγονότων σχετικά με την ανανέωση θέσης. // Define a listener that responds to location updates LocationListener locationlistener = new LocationListener() { public void onlocationchanged(location location) { // Called when a new location is found by provider. double lat=(double)(location.getlatitude()); double lng=(double)(location.getlongitude()); lattext.settext(string.valueof(lat)); longtext.settext(string.valueof(lng)); } public void onstatuschanged(string provider, int status, Bundle extras) {} public void onproviderenabled(string provider) {} public void onproviderdisabled(string provider) {} }; // Register the listener with the Location Manager // Ρeceive location updates locationmanager.requestlocationupdates(locationmanager.ne TWORK_PROVIDER, 0, 0, locationlistener); Λήψη της τελευταίας γνωστής θέσης από κάποιον πάροχο. String locationprovider = LocationManager.NETWORK_PROVIDER; // Or use LocationManager.GPS_PROVIDER Location lastknownlocation = locationmanager.getlastknownlocation(locationprovider); Τερματισμός των ανανεώσεων ενημέρωσης θέσης. // Remove the listener you previously added locationmanager.removeupdates(locationlistener); 62
64 Σημειώσεις Android Στο αρχείο μανιφέστου πρέπει να προστεθούν οι αιτήσεις έγκρισης για δίκτυο και υπηρεσίας εντοπισμού θέσης. <uses-permission android:name= android.permission.internet /> <uses-permission android:name= android.permission.access_fine_location /> Για λειτουργικό σύστημα μεγαλύτερο του 6 (Marshmallow) υπάρχουν και τα runtime permissions, τα οποία επιβεβαιώνουν την άδεια χρήσης η οποία έχει χορηγηθεί στο αρχείο μανιφέστου ή τη δημιουργούν αν δεν υπάρχει. Ο έλεγχος γίνεται με: if (ContextCompat.checkSelfPermission(thisActivity, Manifest.permission.ACCESS_FINE_LOCATION)!= PackageManager.PERMISSION_GRANTED) { // Permission is not granted } Η εφαρμογή mylbs προσδιορίζει την τρέχουσα θέση της συσκευής όταν είναι ενεργοποιημένο το GPS. Το UI είναι: 63
65 Ιωάννης Έλληνας Χάρτες Google Μπορούμε σε μια εφαρμογή μας να ενσωματώσουμε τους χάρτες Google και να κάνουμε διάφορους χειρισμούς (μεγέθυνση, σμίκρυνση, τοποθέτηση δεικτών, κλπ). Δημιουργούμε την εφαρμογή mymap για να δούμε τον τρόπο χρήσης των χαρτών αλλά και για εξάσκηση με τους χάρτες Google. Δημιουργούμε το project με το παραπάνω όνομα επιλέγοντας εφαρμογή με χάρτες Google (Google Maps Activity). Δημιουργούνται τα αρχεία MapsActivity.java, activity_maps.xml και google_maps_api.xml. Στο περιγραφικό αρχείο google_maps_api.xml δίνεται μια διεύθυνση για την απόκτηση ενός API key για χρήση των χαρτών ( Πατάμε Continue και στη συνέχεια Create API key. 64
66 Σημειώσεις Android Τοποθετούμε το κλειδί στην κατάλληλη θέση του περιγραφικού αρχείου google_maps_api.xml. Παρατηρήστε τη μορφή του activity_maps.xml το οποίο είναι ένα fragment δίνοντας όλη την οθόνη για απεικόνιση των χαρτών. Παρατηρήστε το αρχείο μανιφέστου. Το API key έχει περάσει στο αρχείο αυτό και έχει δοθεί άδεια για ACCESS_FINE_LOCATION. Παρατηρήστε τον κώδικα στο αρχείο MapsActivity.java, όπου τοποθετεί έναν marker σε δεδομένο (lat, long). Βρείτε το αντίστοιχο (lat, long) της Ακρόπολης και σημειώστε ACROPOLIS OF ATHENS. Θα εμφανιστεί όταν πατηθεί ο marker. Οι συντεταγμένες φαίνονται στο url. Η μέθοδος που χρησιμοποιείται είναι η: newlatlng(lat, long) Χρησιμοποιήστε επίσης τη μέθοδο: newlatlngzoom(lat, long, 10) και παρατηρήστε τα αποτελέσματα. 65
8 Maps. 8.1 Δημουργία Activity με χάρτη
8 Maps Ένα πολύ σημαντικό κομμάτι πολλών εφαρμογών για κινητά, χρησιμοποιούν χάρτες και τη θέση του χρήστη για να πραγματοποιήσουν κάποιες λειτουργίες που δεν είναι δυνατόν να συμβούν με έναν απλό υπολογιστή.
ANDROID Προγραμματισμός Εφαρμογών
ANDROID Προγραμματισμός Εφαρμογών Παναγιώτης Κρητιώτης ΑΜ 1607 Περιεχόμενα Εισαγωγή Βασικά Στοιχεία Χαρακτηριστικά Αρχιτεκτονική Εργαλεία Προγραμματισμού Eclipse IDE Android SDK - ADT Plugin Προσομοιωτής
Android Studio για Windows
Android Studio για Windows 1. Οδηγίες Εγκατάστασης: 1. Κατεβάστε το Android Studio από εδώ (τελευταία έκδοση 0.4.6, 496 MB): http://developer.android.com/sdk/installing/studio.html 2. Εγκαταστήστε το αρχείο
ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC
ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ DVR KTEC 1) Πατάμε δεξί κλικ Μενού 2) Όνομα Χρήστη βάζουμε «admin» 3) Κωδικός Πρόσβασης το αφήνουμε «κενό» 4) Πατάμε OK και μπαίνουμε στο Μενού Είσοδος στο μενού Στην πρώτη εκκίνηση μετά
Αντικειμενοστρεφής Προγραμματισμός
Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr 1 Δομημένος προγραμματισμός έναντι αντικειμενοστρεφούς
2.1 Σύνδεση Εξωτερικής Συσκευής στο IDE
2.1 Σύνδεση Εξωτερικής Συσκευής στο IDE Κατά την ανάπτυξη μιας εφαρμογής είναι σημαντικό να ελέγχετε την λειτουργικότητά της σε μια συσκευή, πριν την δημοσιεύσετε στους χρήστες. Ένα πολύ βολικό σύστημα,
Android Studio για Linux
Android Studio για Linux 1. Οδηγίες Εγκατάστασης: 1. Κατεβάστε το Android Studio από εδώ (τελευταία έκδοση 0.4.6, 496 MB): http://developer.android.com/sdk/installing/studio.html 2. Επιλέξτε το πακέτο
Δημιουργία μιας εφαρμογής Java με το NetBeans
Δημιουργία μιας εφαρμογής Java με το NetBeans Για να δημιουργήσετε μια εφαρμογή Java πρέπει να ακολουθήσετε τα εξής βήματα : Αρχικά πρέπει να δημιουργηθεί ένα project το οποίο θα περιέχει όλα τα αρχεία
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ Οδηγός Εργαστηρίου για το Μεταπτυχιακό Μάθημα Τεχνολογία Διοίκησης
Βρίγκας Μιχαήλ Α.Μ.744 Μπράχος Χ. Ευάγγελος Α.Μ.795
Βρίγκας Μιχαήλ Α.Μ.744 Μπράχος Χ. Ευάγγελος Α.Μ.795 Περιεχόμενα Εισαγωγή Εγκατάσταση Δημιουργία νέου project Java Editor Perspectives Δημιουργία source folders Προσθήκη νέου αρχείου στο project Εισάγωντας
ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ MOODLE
ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ MOODLE Η διαδικασία μεταφοράς του υλικού ενός μαθήματος από την πλατφόρμα Blackboard Vista στην πλατφόρμα Moodle σε βήματα είναι η ακόλουθη:
ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΩΝ ΓΙΑ ΠΡΟΣΩΠΙΚΟ ΥΠΟΛΟΓΙΣΤΗ (MS WINDOWS, LINUX, MACOS)
ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΩΝ ΓΙΑ ΠΡΟΣΩΠΙΚΟ ΥΠΟΛΟΓΙΣΤΗ (MS WINDOWS, LINUX, MACOS) ΠΕΡΙΕΧΟΜΕΝΑ ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΗΣ OWNCLOUD ΣΕ MS WINDOWS... 2 ΧΡΗΣΗ ΕΦΑΡΜΟΓΗΣ OWNCLOUD ΣΕ MS WINDOWS... 11 ΔΙΑΜΟΙΡΑΣΜΟΣ ΑΡΧΕΙΩΝ/ΦΑΚΕΛΩΝ...
άσκηση Hide UI Elements 7.2 Try and Catch
7.1 Hide UI Elements Στο Android Studio όταν θέλουμε να κρύψουμε οτιδήποτε (κάποιο Button, ένα TextView, ένα ImageView κλπ) μπορούμε να χρησιμοποιήσουμε την παρακάτω εντολή: setvisibility(view.invisible)
Εισαγωγή στην εφαρμογή Βασική Σελίδα (Activity) Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10
Περιεχόμενα Εισαγωγή στην εφαρμογή... 2 Βασική Σελίδα (Activity)... 3 Ρυθμίσεις... 3 Πελάτες... 6 Αναζήτηση Πελάτη... 6 Προβολή Πελάτη... 7 Επεξεργασία Πελάτη... 10 Αποθήκη... 11 Αναζήτηση προϊόντος...
ΠΑΡΑΡΤΗΜΑ ΓΡΕΒΕΝΩΝ ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
ΠΑΡΑΡΤΗΜΑ ΓΡΕΒΕΝΩΝ ΤΜΗΜΑ ΕΠΙΧΕΙΡΗΣΙΑΚΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ Θέμα : ΥΛΟΠΟΙΗΣΗ ΞΕΝΟΓΛΩΣΣΗΣ ΕΚΠΑΙΔΕΥΤΙΚΗΣ ΕΦΑΡΜΟΓΗΣ ΣΕ ΠΛΑΤΦΟΡΜΑ ANDROID Όνοματεπώνυμο : Στέκας Ιγνάτιος Επιβλέπων : Σωτήριος Κοντογιάννης Ημερομηνία
Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010
Τμήμα Πληροφορικής & Επικοινωνιών Τομέας Υπολογιστικών Τεχνικών & Συστημάτων Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Ιωάννης Γεωργουδάκης - Πάρις Μαστοροκώστας Σεπτέμβριος 2011 ΠΕΡΙΕΧΟΜΕΝΑ
JOOMLA CMS ΒΑΣΙΚΗ ΠΑΡΑΜΕΤΡΟΠΟΙΗΣΗ (PART I)
JOOMLA CMS ΒΑΣΙΚΗ ΠΑΡΑΜΕΤΡΟΠΟΙΗΣΗ (PART I) Δημήτρης Μακρής Advanced Topics in Telecoms 1 Ο ΒΗΜΑ: ΞΕΚΙΝΩΝΤΑΣ ΤΟ JOOMLA 1 Ο ΒΗΜΑ: ΞΕΚΙΝΩΝΤΑΣ ΤΟ JOOMLA 1 Ο ΒΗΜΑ: ΞΕΚΙΝΩΝΤΑΣ ΤΟ JOOMLA 2 Ο ΒΗΜΑ: ΔΙΑΧΕΙΡΙΖΟΝΤΑΣ
Εισαγωγή στην Ανάπτυξη Εφαρμογών Android
Εισαγωγή στην Ανάπτυξη Εφαρμογών Android Σημειώσεις σεμιναρίου Επιμέλεια: Βασίλης Κόλιας Ενότητα 2 Εισαγωγή στις εφαρμογές Graphical User Interfaces Πίνακας Περιεχομένων 4 Εισαγωγή στις εφαρμογές... 2
Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών Οδηγός Εργαστηρίου
Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy
Σ ε λ ί δ α 1 Οδηγός Εγκατάστασης και Χρήσης του Arebas Easy Περιεχόμενα 1. Download Arebas Easy... 2 2. Εγκατάσταση Arebas Easy... 3 3. Εγγραφή στον Arebas Server... 7 4. Παραμετροποίηση Arebas Easy...
ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ OPEN ECLASS
ΔΙΑΔΙΚΑΣΙA ΜΕΤΑΦΟΡΑΣ ΥΛΙΚΟΥ ΜΑΘΗΜΑΤΟΣ ΑΠΟ BLACKBOARD VISTA ΣΕ OPEN ECLASS Η διαδικασία μεταφοράς του υλικού ενός μαθήματος από την πλατφόρμα Blackboard Vista στην πλατφόρμα Open eclass σε βήματα είναι
TaxiCounter Android App. Περδίκης Ανδρέας ME10069
TaxiCounter Android App Περδίκης Ανδρέας ME10069 Content Android Operating System Development Tools Taxi Counter Algorithm Design Development Process Android Operating System Android is a Linux-based operating
Οδηγός σύνδεσης στο δίκτυο του ΤΕΠΑΚ μέσα από την υπηρεσία απομακρυσμένης πρόσβασης VPN Τεχνολογικό Πανεπιστήμιο Κύπρου
Οδηγός σύνδεσης στο δίκτυο του ΤΕΠΑΚ μέσα από την υπηρεσία απομακρυσμένης πρόσβασης VPN Τεχνολογικό Πανεπιστήμιο Κύπρου Περιεχόμενα Οδηγός σύνδεσης στο δίκτυο του ΤΕΠΑΚ μέσα από την υπηρεσία απομακρυσμένης
Προσομείωση ασύρματων δικτύων με τη χρήση του OPNET Modeler
Προσομείωση ασύρματων δικτύων με τη χρήση του OPNET Modeler ΣΚΟΠΟΙ Σε αυτήν την άσκηση: Θα φτιάξουμε μικρά ασύρματα δίκτυα Θα επιλέξουμε ποια δεδομένα θα συλλέξουμε Θα τρέξουμε την προσομείωση Θα αναλύσουμε
ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ Α2Α
1 ΤΕΧΝΙΚΕΣ ΠΡΟΔΙΑΓΡΑΦΕΣ ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ Α2Α 1.1 ΛΕΙΤΟΥΡΓΙΚΟ ΣΥΣΤΗΜΑ Το λειτουργικό σύστημα θα πρέπει να είναι Windows XP, 2000 και 2003. Ο λογαριασμός χρήστη του υπολογιστή, θα πρέπει να έχει πλήρη
ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης
Σελίδα 1από ΤΕΙ ΚΑΒΑΛΑΣ Πτυχιακή εργασία Δικτυακή Εφαρμογή διαχείρισης ηλεκτρονικών εγγράφων υπηρεσίας. ΕΙΣΑΓΩΓΗ Μιλτιάδης Κακλαμάνης Σελίδα 2από Κατάλογος περιεχομένων ΕΙΣΑΓΩΓΗ...1 Σχετιζόμενα πρόσωπα...3
Υπηρεσία Απομακρυσμένης Πρόσβασης VPN Οδηγός Εγκατάστασης και Διαμόρφωσης για χρήστες λειτουργικών συστημάτων MAC OS X
ΥΠΗΡΕΣΙΑ ΠΛΗΡΟΦΟΡΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΤΟΜΕΑΣ ΔΙΚΤΥΩΝ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ Υπηρεσία Απομακρυσμένης Πρόσβασης VPN Οδηγός Εγκατάστασης και Διαμόρφωσης για χρήστες λειτουργικών συστημάτων MAC OS X ΥΠΣ ΕΔ/49 12 Αυγούστου
Εργαστηριακές Σημειώσεις
Πολυμεσικές Υπηρεσίες στην Υγεία [κωδ. μαθήματος ΛΟΓ51] Εργαστηριακές Σημειώσεις ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΕΡΙΒΑΛΛΟΝ ANDROID Μανώλης Τσικνάκης, Αλέξανδρος Ρονιώτης, Ευαγγελία Μανιαδή Ηράκλειο 2016 κεφαλαιο
ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ
ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ ΟΔΗΓΟΣ ΣΥΝΔΕΣΗΣ ΣΤO ΔΙΚΤΥΟ ΤΟΥ ΤΠΚ ΜΕΣΩ ΤΗΣ ΥΠΗΡΕΣΙΑΣ ΑΠΟΜΑΚΡΥΣΜΕΝΗΣ ΠΡΟΣΒΑΣΗΣ VPN ΥΣΠΤ Η υπηρεσία πρόσβασης στο δίκτυο δεδομένων του ΤΠΚ μέσω εικονικού ιδιωτικού δικτύου
ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΩΝ ΓΙΑ TABLET Η SMART PHONES (ANDROID, IOS)
ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΩΝ ΓΙΑ TABLET Η SMART PHONES (ANDROID, IOS) ΠΕΡΙΕΧΟΜΕΝΑ ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΗΣ OWNCLOUD ΓΙΑ ΛΕΙΤΟΥΡΓΙΚΟ ANDROID... 2 ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ ΤΗΣ ΕΦΑΡΜΟΓΗΣ OWNCLOUD ΣΤΟ ANDROID... 5 ΕΓΚΑΤΑΣΤΑΣΗ
ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ LIVETRIP TRAVELLER
ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ LIVETRIP TRAVELLER Η εφαρμογή LiveTripTraveller διατίθεται για κινητά τηλέφωνα με λειτουργικό σύστημα Android. Στο υπο-ιστοσελίδα www.livetrips.com/sources μπορείτε να κατεβάσετε την εφαρμογή
Εργαστήριο 1-1 η Άσκηση - Ανάλυση
Εργαστήριο 1-1 η Άσκηση - Ανάλυση Εκφώνηση: Δημιουργείστε εφαρμογή σε Java Swing με χρήση του IDE NetBeans όπου θα παρουσιάζεται ποιο κουμπί πατήθηκε. Η εφαρμογή θα μοιάζει ως εξής: Πρώτο Βήμα: Αρχική
Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών
ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΣΧΟΛΗ ΘΕΤΙΚΩΝ ΕΠΙΣΤΗΜΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥΔΩΝ Τεχνολογία Διοίκησης Επιχειρησιακών Διαδικασιών Οδηγός Εργαστηρίου:
Οδηγίες για την εγκατάσταση του πακέτου Cygwin
Οδηγίες για την εγκατάσταση του πακέτου Cygwin Ακολουθήστε τις οδηγίες που περιγράφονται σε αυτό το file μόνο αν έχετε κάποιο laptop ή desktop PC που τρέχουν κάποιο version των Microsoft Windows. 1) Copy
COSMOTE E220 USB Modem (3G HSDPA 3.6Mbps) Εγχειρίδιο Χρήσης
COSMOTE E220 USB Modem (3G HSDPA 3.6Mbps) Εγχειρίδιο Χρήσης i Περιεχόµενα Προετοιµασία Ε220...1 Οδηγός Εγκατάστασης...1 Εισαγωγή στην Εφαρµογή Ε220 Manager...3 Υπηρεσίες Internet...4 SMS...4 Κατάλογος
Οδηγός Χρήσης για Windows
Οδηγός Χρήσης για Windows Περιεχόμενα Γρήγορο ξεκίνημα... 1 Εγκατάσταση του λογισμικού... 1 Χρήση του Εικονιδίου στην Περιοχή Ειδοποιήσεων... 6 Επαναφορά του εικονιδίου στην Περιοχή ειδοποιήσεων... 8 Διαχείριση
Οδηγίες χρήσης για εφαρμογή WiFi ΑC
Οδηγίες χρήσης για εφαρμογή WiFi ΑC Σκανάρετε τον παραπάνω κωδικο QR με το κινητό σας για να κατεβάσετε και να εγκαταστήσετε την εφαρμογή στο κινητό σας. Σημείωση: Το κινητό σας θα πρέπει να διαθέτει εφαρμογή
Οδηγός Εισαγωγή Χρηστών σε LDAP Server με χρήση. LdapAdmin TEMPLATE
Οδηγός Εισαγωγή Χρηστών σε LDAP Server με χρήση LdapAdmin TEMPLATE Version 1 23/6/2017 Περιεχόμενα Ldap Admin... 2 Σύνδεση στον Ldap Server με την χρήση του Ldap Admin... 2 Εισαγωγή Χρήστη τύπου Employee-Affiliate
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ
ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΟΔΗΓΙΕΣ ΕΓΚΑΤΑΣΤΑΣΗΣ ΕΦΑΡΜΟΓΩΝ JAIN-SIP-PROXY και SIP-COMMUNICATOR Εισαγωγή Αυτές οι οδηγίες περιγράφουν τα βήματα για να εγκαταστήσουμε τις εφαρμογές JAIN- SIP-Proxy και SIP-Communicator.
Βιοϊατρική τεχνολογία
Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Βιοϊατρική τεχνολογία Ενότητα 5: Οξύμετρο (OxyPro Project) Αν. καθηγητής Αγγελίδης Παντελής e-mail: paggelidis@uowm.gr ΕΕΔΙΠ Μπέλλου Σοφία e-mail: sbellou@uowm.gr
Εισαγωγικές έννοιες. Ιωάννης Γ. Τσούλος 2014
Εισαγωγικές έννοιες Ιωάννης Γ. Τσούλος 2014 Διάγραμμα παρουσιάσεως 1. Κατηγορίες κινητών τηλεφώνων 2. Κατηγορίες έξυπνων κινητών τηλεφώνων 3. Προγραμματισμός κινητών συσκευών 4. Ξεκίνημα με το Eclipse
Ελέγξτε την ταινία σας
Ελέγξτε την ταινία σας Σε αυτές τις ασκήσεις, θα κάνετε εισαγωγή μιας ταινίας και θα χρησιμοποιήσετε τις επιλογές που παρουσιάστηκαν στο μάθημα. Άσκηση 1: Εισαγωγή αρχείου ταινίας 1. Κάντε κλικ στη μικρογραφία
ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΑΣΥΡΜΑΤΟ ΔΙΚΤΥΟ eduroam
ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΚΕΝΤΡΟ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΩΝ Πατησίων 76, ΑΘΗΝΑ 104 34 - Tηλ.. 210 8203900 - Fax. 210 8203909 e-mail: noc@aueb.gr ΟΔΗΓΙΕΣ ΣΥΝΔΕΣΗΣ ΣΤΟ ΑΣΥΡΜΑΤΟ ΔΙΚΤΥΟ eduroam To eduroam είναι
Οδηγίες Εγκατάστασης της εφαρμογής Readium και Readium για μαθητές με αμβλυωπία για την ανάγνωση βιβλίων epub σε Υπολογιστή.
Οδηγίες Εγκατάστασης της εφαρμογής Readium και Readium για μαθητές με αμβλυωπία για την ανάγνωση βιβλίων epub σε Υπολογιστή. Βήμα 1 ο : Εγκατάσταση εφαρμογής ανάγνωσης Readium και Readium για μαθητές με
Σενάριο Εστίασης Win XP:
Σενάριο Εστίασης Win XP: Υλικό: 1 Η/Υ (backoffice), 1 POS, 1 router Motorola, 1 PDA. Σενάριο: Sync του backoffice με το POS και merge του POS με το PDA. Προϋποθέσεις Software: 1) BACK OFFICE : WIN XP pro,.net
Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;
Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class
Οδηγίες χρήσης για εφαρμογή WiFi ΑC
Οδηγίες χρήσης για εφαρμογή WiFi ΑC Σκανάρετε τον παραπάνω κωδικο QR με το κινητό σας για να κατεβάσετε και να εγκαταστήσετε την εφαρμογή στο κινητό σας. Σημείωση: Το κινητό σας θα πρέπει να διαθέτει εφαρμογή
Εθνική Υποδομή ΓΕωχωρικών Πληροφοριών
Εθνική Υποδομή ΓΕωχωρικών Πληροφοριών Οργανισμός Κτηματολογίου & Χαρτογραφήσεων Ελλάδας Διαδικτυακές Υπηρεσίες Αναζήτησης και Απεικόνισης ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ Διεύθυνση Γεωπληροφορικής Δεκέμβριος 2012 Περιεχόμενα
Εγχειρίδιο Χρήσης Εφαρμογής TRS Client
Εγχειρίδιο Χρήσης Εφαρμογής TRS Client Transaction Reporting System (TRS) Πίνακας Περιεχομένων 1. Γενικά... 3 1.1 Έλεγχος Διαθεσιμότητας... 4 1.2 Επιλογή Αρχείου... 4 1.3 Υπογραφή Αποστολή Δεδομένων...
Συνοπτικός Οδηγός Χρήσης του MySQL Workbench
Συνοπτικός Οδηγός Χρήσης του MySQL Workbench To ΜySQL Workbench είναι μία εφαρμογή, με γραφικό περιβάλλον, στην οποία μπορούμε να συντάξουμε και να εκτελέσουμε εντολές SQL. To MySQL Workbench απαιτεί να
Για να κάνουμε μια εικόνα να εξαφανίζεται και μια να εμφανίζεται (cross fade), κάνουμε τον συνδυασμό των από πάνω
4. Media Έχετε ήδη δει πως βάζετε μια εικόνα στο Android Studio με το ImageView. Σε αυτό το κεφάλαιο θα μάθετε πώς μπορείτε να κάνετε κάποια βασικά animation και να διαχειριστείτε Video και Audio. 4.1
ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C
ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα της γλώσσας C, το Dev-C++, το οποίο είναι εφαρμογή που τρέχει
Εισαγωγή στο περιβάλλον Code::Blocks
Εισαγωγή στο περιβάλλον Code::Blocks Στο παρόν εγχειρίδιο παρουσιάζεται η διαδικασία ανάπτυξης, μεταγλώττισης και εκτέλεσης ενός προγράμματος C στο περιβάλλον του Code::Blocks. Η διαδικασία αυτή παρουσιάζεται
Εγκατάσταση λογισμικού και αναβάθμιση συσκευής Device software installation and software upgrade
Για να ελέγξετε το λογισμικό που έχει τώρα η συσκευή κάντε κλικ Menu > Options > Device > About Device Versions. Στο πιο κάτω παράδειγμα η συσκευή έχει έκδοση λογισμικού 6.0.0.546 με πλατφόρμα 6.6.0.207.
ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C
ΕΡΓΑΣΤΗΡΙΟ 3: Προγραμματιστικά Περιβάλλοντα και το Πρώτο Πρόγραμμα C Στο εργαστήριο αυτό, θα ασχοληθούμε με δύο προγραμματιστικά περιβάλλοντα για τη γλώσσα C: τον gcc μεταγλωττιστή της C σε περιβάλλον
Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου
Οδηγός Χρήσης Microsoft Office365 & OneDrive for Business Πανεπιστημίου Κύπρου Υπηρεσία Πληροφορικών Συστημάτων Τομέας Συστημάτων ΥΠΣ-ΕΔ93 22-10-2015 Περιεχόμενα 1. Office 365... 3 2. Τι περιλαμβάνει το
Χρήσιμες Ρυθμίσεις του Windows 7 στον Η/Υ σας
Χρήσιμες Ρυθμίσεις του Windows 7 στον Η/Υ σας Πώς να δημιουργήσουμε ένα νέο λογαριασμό χρήστη (User Account) στα Windows 7 Αρκετές φορές τυχαίνει να χρησιμοποιούν διάφορα άτομα τον Η/Υ σας. Σε τέτοιες
TeleCost Hotel για Panasonic TDA
TeleCost Hotel για Panasonic TDA 1. Οδηγίες Εγκατάστασης του Λογισμικού του Συστήματος Telecost Hotel Γενικά Για την εγκατάσταση του Λογισμικού του Συστήματος TeleCost HL θα πρέπει να ακολουθηθούν συνοπτικά
Υπηρεσία διαμοιρασμού αρχείων
7 Ιουνίου 2013 Υπηρεσία διαμοιρασμού αρχείων Πανεπιστήμιο Κύπρου, Τμήμα Πληροφορικής Ομάδα Τεχνικής Υποστήριξης v0.4 Πίνακας περιεχομένων Γενικά... 2 Διαθεσιμότητα... 2 Πρόσβαση... 2 Φυλλομετρητή ιστού...
Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010
Τμήμα Πληροφορικής & Τηλ/νιών Τομέας Προγ/σμού & Τεχνολογίας Λογισμικού Συνοπτικό εγχειρίδιο χρήσης του Microsoft Visual Studio 2010 Δρ. Νικόλαος Θ. Λιόλιος Καθηγητής Φεβρουάριος 2012 1. Εισαγωγή Το Visual
Μπορείτε τα δείτε βιντεάκι με τη διαδικασία εδώ: http://www.greektuts.net/greek-in-joomla/
1) Εμφάνιση ιστοσελίδας Ανοίγουμε το πρόγραμμα πλοήγησης (Firefox, Chrome, Internet Explorer κτλ) και στη γραμμή διευθύνσεων πληκτρολογούμε τη διεύθυνση http://localhost ή http://127.0.0.1. Αν δεν βλέπουμε
Ξεκινώντας με το MIT Αρρ Inventor. 1 η Εργασία
Ξεκινώντας με το MIT Αρρ Inventor 1 η Εργασία Απαιτήσεις 1. Σύνδεση στο Διαδίκτυο (διότι οι εφαρμογές δημιουργούνται online) 2. Εγκατεστημένος ο Browser Google Chrome 3. Υπαρκτός λογαριασμός Gmail 4. Κατεβάστε
Διαδικτυακές Υπηρεσίες Αναζήτησης, Απεικόνισης και Απευθείας Πρόσβασης στα δεδομένα ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ. Έκδοση 0.1.
Κομβικό Σημείο Επαφής Υπουργείου Εσωτερικών Διαδικτυακές Υπηρεσίες Αναζήτησης, Απεικόνισης και Απευθείας Πρόσβασης στα δεδομένα ΟΔΗΓΙΕΣ ΧΡΗΣΗΣ Έκδοση 0.1. Νοέμβρης 2014 Περιεχόμενα 1. ΕΙΣΑΓΩΓΗ... 2 2.
Οδηγίες εγκατάστασης και χρήσης Java σε προσωπικό υπολογιστή
Οδηγίες εγκατάστασης και χρήσης Java σε προσωπικό υπολογιστή Οι οδηγίες που ακολουθούν περιγράφουν την εγκατάσταση και τη χρήση (compile & run) της Java για τον προσωπικό σας υπολογιστή. Windows (10, 8.1,
PRISMA Win POS Sync Merge Replication
ΤΜΗΜΑ ΥΠΟΣΤΗΡΙΞΗΣ Οδηγός Ρυθμίσεων Συγχρονισμού PRISMA Win POS Sync Merge Replication Η διαδικασία του συγχρονισμού γίνεται από τον Η/Υ που έχει το Back Office. Βασική προϋπόθεση για να ενεργοποιηθεί ο
Οδηγός Εγκατάστασης Pylon Auto Moto Cube
POWERED BY ACT Οδηγός Εγκατάστασης Pylon Auto Moto Cube 1 Version: 01 Μάιος 2017 Περιεχόμενα Εκτέλεση Εγκατάστασης Pylon 3 Pylon Auto-Moto Cube Configuration για Sql Server βάση 5 Εγκατάσταση και Εξαγωγή
Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:
Εργαστήριο Java Διδάσκουσα: Πρέντζα Ανδριάνα aprentza@unipi.gr Εργαστηριακοί Συνεργάτες: Γεωργιοπούλου Ρούλα Λύβας Χρήστος roulageorio@ssl-unipi.gr clyvas@unipi.gr Εργαστήρια Δευτέρα 18:00-20:00,Τρίτη
ΣΥΣΤΗΜΑΤΑ SCADA. Μέρος 5. Δικτύωση για Απομακρυσμένο Έλεγχο και Μεταφορά Δεδομένων
ΣΥΣΤΗΜΑΤΑ SCADA Μέρος 5 Δικτύωση για Απομακρυσμένο Έλεγχο και Μεταφορά Δεδομένων 1 Αναφορές 1. Taking Your Measurements to the Web with Lab VIEW : Ενδιαφέρον και περιεκτικό άρθρο από την ιστοσελίδα της
Οδηγίες. Εγκατάσταση Προσωπικού Πιστοποιητικού
Οδηγίες για Εγκατάσταση Προσωπικού Πιστοποιητικού Περιεχόμενα Έκδοση πιστοποιητικού... σελ. 2 Δημιουργία αντιγράφου ασφαλείας. σελ. 5 Εγκατάσταση στο λογαριασμό αλληλογραφίας..σελ. 10 Έκδοση πιστοποιητικού
ΣΥΝΤΟΜΟΣ ΟΔΗΓΟΣ ΧΡΗΣΗΣ MSN MESSENGER. Αρχικά πάμε στο μενού Programs και κλικάρουμε την επιλογή CHAT
ΣΥΝΤΟΜΟΣ ΟΔΗΓΟΣ ΧΡΗΣΗΣ MSN MESSENGER Αρχικά πάμε στο μενού Programs και κλικάρουμε την επιλογή CHAT Στα προγράμματα που μας εμφανίζει επιλέγουμε το MSN MESSENGER Κλικάρουμε το START PROGRAM Μας εμφανίζεται
Vodafone Business Connect
Vodafone Business Connect Vodafone Business WebHosting Αναλυτικός Οδηγός Χρήσης MSSQL Manager Αναλυτικός οδηγός χρήσης: MS SQL Manager Vodafone Business Connect - Υπηρεσίες φιλοξενίας εταιρικού e-mail
GPS Tracker ΤRΑΚΚΥ Personal
GPS Tracker ΤRΑΚΚΥ Personal Σας ευχαριστούμε που προτιμήσατε το σύστημα εντοπισμού / παρακολούθησης πορείας Trakky Personal. Ενσωματώνει τις τελευταίες τεχνολογίες στον τομέα του επιτρέποντάς σας να εντοπίσετε
Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth με Android Phones
Εγχειρίδιο Χρήσης Ενημέρωσης Λογισμικού Bluetooth με Android Phones Ισχύει για προϊόντα από το 2012 και μετά CDE-13xBT & CDE-W235BT & CDA-137BTi Αυτό το εγχειρίδιο περιγράφει τα βήματα που απαιτούνται
Epsilon Net PYLON Platform
Epsilon Net PYLON Platform Οδηγίες Εγκατάστασης Top 1 / 31 Περιεχόμενα 1 ΠΡΟΑΠΑΙΤΟΥΜΕΝΑ... 3 2 ΕΓΚΑΤΑΣΤΑΣΗ ΕΦΑΡΜΟΓΗΣ... 5 3 ΕΓΚΑΤΑΣΤΑΣΗ DEMO... 7 4 ΕΓΚΑΤΑΣΤΑΣΗ ΠΡΟΤΥΠΗΣ ΒΑΣΗΣ... 8 4.1 Φόρτωση πρότυπης
Όλοι οι χρήστες του Turnitin πρέπει να δημιουργήσουν ένα προφίλ χρήστη.
Οδηγίες για καθηγητές Για τη χρήση του Turnitin απαιτούνται τα παρακάτω βήματα: 1. Δημιουργία λογαριασμού 2. Δημιουργία τάξης και διαχείριση πληροφοριών τάξης 3. Δημιουργία εργασίας και σχετικές ρυθμίσεις
ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1
ΕΓΧΕΙΡΙΔΙΟ ΧΡΗΣΗΣ GRS-1 Σελίδα 1 ΓΕΝΙΚΑ - ΕΙΣΑΓΩΓΗ Το GRS-1 της TOPCON διαθέτει λειτουργικό σύστημα Windows CE NET 6.1 παρέχοντας την δυνατότητα εγκατάστασης οποιασδήποτε εφαρμογής και λογισμικού έκδοσης
Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών
Βιβλιογραφία: Ανάπτυξη Διεπαφών Χρήστη σε Λειτουργικά Συστήματα Κινητών Συσκευών Προγραμματισμός Android Ian Clifton. AndroidTM User Interface Design, Addison-Wesley, 2013 P. Deitel. H. Deitel, A. Deitel.
Δομές Δεδομένων. Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse. 5ο εξάμηνο. v1.0
Δομές Δεδομένων 5ο εξάμηνο Σημειώσεις από το εργαστήριο για τον χειρισμό του προγράμματος Eclipse v1.0 Τις σημειώσεις κράτησαν και διαμόρφωσαν σε word οι: Κονδύλη Γαλήνη, ΑΜ 5576 Μάλλιου Χριστίνα, ΑΜ 5413
Σύστημα Άυλων Τίτλων - Οδηγίες παραμετροποίησης client συστήματος
Σύστημα Άυλων Τίτλων - Οδηγίες παραμετροποίησης client συστήματος Έκδοση 1.0 10/03/2016 Page 1 of 42 Περιεχόμενα 1. Προαπαιτούμενα... 3 1.1 Java Runtime Environment (JRE)... 4 1.2 Browsers... 5 1.3 Certificates...
Πως θα κατασκευάσω το πρώτο πρόγραμμα;
Εργαστήριο Δομημένος Προγραμματισμός (C#) Τμήμα Μηχανολογίας Νικόλαος Ζ. Ζάχαρης Καθηγητής Εφαρμογών Σκοπός Να γίνει εξοικείωση το μαθητών με τον ΗΥ και το λειτουργικό σύστημα. - Επίδειξη του My Computer
Η εφαρμογή είναι βελτιστοποιημένη για όλες τις συσκευές ios και Android, με ios 9.x ή νεότερη έκδοση και Android 4.4 ή νεότερη έκδοση.
Οδηγίες βήμα προς βήμα για την εφαρμογή Με την εφαρμογή αυτή μπορείτε να χρησιμοποιήσετε ψηφιακά βιβλία (e-books) σε μορφή «Adobe Digital Editions epub» και «Adobe Digital Editions PDF», αρχεία ήχου (e-audios),
Οδηγός γρήγορης εκκίνησης
Οδηγός γρήγορης εκκίνησης Το Microsoft Word 2013 έχει διαφορετική εμφάνιση από προηγούμενες εκδόσεις. Γι αυτό το λόγο, δημιουργήσαμε αυτόν τον οδηγό για να ελαχιστοποιήσουμε την καμπύλη εκμάθησης. Γραμμή
ΠΡΟΛΟΓΟΣ. Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi
Πίνακας Περιεχομένων ΠΡΟΛΟΓΟΣ V Σε ποιους απευθύνεται αυτό το βιβλίο... vi Διάρθρωση του βιβλίου... vi 1η Ενότητα: Κινητός ιστός... vii 2η Ενότητα: Κινητές εφαρμογές στην πλατφόρμα Android... vii 3η Ενότητα:
Γι αυτό το λόγο όπως έχει ήδη αναφερθεί, εκτός από την προβολή Design, υπάρχει η προβολή Text όπου μπορείτε να δείτε σε xml το layout.
3.1 Layouts Ένα από τα πιο tricky πράγματα του Android Studio είναι το πώς θα προσαρμόσετε το Layout της εφαρμογής σας στις πραγματικές σας ανάγκες, κι όχι στο πώς θα σας το φτιάξει όπως «νομίζει» το πρόγραμμα.
Using Google Maps Engine Connector for QGIS
Using Google Maps Engine Connector for QGIS QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Christina Dimitriadou Paliogiannis Konstantinos Tom Karagkounis
Οδηγίες Σύνδεσης Ασύρματου Δικτύου ΤΜΗΥ&Π. Οδηγίες Σύνδεσης για λοιπά Linux/Unix Συστήματα
Οδηγίες Σύνδεσης Ασύρματου Δικτύου ΤΜΗΥ&Π Περιεχόμενα: 1. 1. Εισαγωγικές Πληροφορίες 2. Οδηγίες Σύνδεσης για Windows XP/Vista 3. Οδηγίες Σύνδεσης για Windows 7 4. Οδηγίες Σύνδεσης για MAC OS 5. Οδηγίες
1.Puzzle. ΕΠΙΜΕΛΕΙΑ: ΓΕΩΡΓΙΑ ΚΛΩΣΤΡΑΚΗ Σελίδα 1
1.Puzzle Μόλις ανοίξω το πρόγραμμα επιλέγω την εντολή Browse. Στη συνέχεια αναζητώ την εικόνα που έχω αποθηκεύσει σε ένα φάκελο (στην επιφάνεια εργασίας ή στα έγγραφά μου ή στο σκληρό μου δίσκο). Αφού
ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ
ΤΕΧΝΟΛΟΓΙΚΟ ΠΑΝΕΠΙΣΤΉΜΙΟ ΚYΠΡΟΥ ΟΔΗΓΟΣ ΣΥΝΔΕΣΗΣ ΣΤO ΔΙΚΤΥΟ ΤΟΥ ΤΠΚ ΜΕΣΩ ΤΗΣ ΥΠΗΡΕΣΙΑΣ ΑΠΟΜΑΚΡΥΣΜΕΝΗΣ ΠΡΟΣΒΑΣΗΣ VPN Η υπηρεσία πρόσβασης στο δίκτυο δεδομένων του ΤΠΚ μέσω εικονικού ιδιωτικού δικτύου (Virtual
Εγκατάσταση αρχείων βιβλιοθήκης VHOPE και VHOPE
Εγκατάσταση αρχείων βιβλιοθήκης VHOPE και VHOPE Βήμα 1, εγκατάσταση VHOPE Η εφαρμογή VHOPE θα πρέπει να εγκατασταθεί στο PC σας προτού μπορείτε να αρχίσετε να χρησιμοποιείτε το υλικό παρουσίασης σε αυτό
Eισαγωγή στο λογισμικό QGis
Eισαγωγή στο λογισμικό QGis 3 η Εργαστηριακή άσκηση Οικολογίας της Βλάστησης - 2018 ανοιχτό λογισμικό: http://www.qgis.org/en/site/ Τι επιλέγουμε να εγκαταστήσουμε Αλλαγή γλώσσας στο QGis Ρυθμίσεις ->
Ξεκινώντας NSZ-GS7. Network Media Player. Οι εικόνες επί της οθόνης, οι λειτουργίες και οι προδιαγραφές μπορεί να αλλάξουν χωρίς προειδοποίηση.
Ξεκινώντας EL Network Media Player NSZ-GS7 Οι εικόνες επί της οθόνης, οι λειτουργίες και οι προδιαγραφές μπορεί να αλλάξουν χωρίς προειδοποίηση. Ξεκινώντας: ON/STANDBY Ενεργοποιεί ή απενεργοποιεί τη συσκευή
Οδηγίες Πρόσβασης στο EndNote Web. Πρόσβαση στο EndNote Web
Οδηγίες Πρόσβασης στο EndNote Web Το EndNote Web είναι εργαλείο διαχείρισης βιβλιογραφικών αναφορών, ενσωματωμένο στη βάση Web of Science. Απαιτείται εγγραφή και δημιουργία password (Sign in / Register)
Εξωτερικές συσκευές Οδηγός χρήσης
Εξωτερικές συσκευές Οδηγός χρήσης Copyright 2008 Hewlett-Packard Development Company, L.P. Οι πληροφορίες στο παρόν έγγραφο μπορεί να αλλάξουν χωρίς προειδοποίηση. Οι μοναδικές εγγυήσεις για τα προϊόντα
Οδηγός Χρήσης για Mac
Οδηγός Χρήσης για Mac Περιεχόμενα Γρήγορο Ξεκίνημα... 1 Χρήση του Εργαλείου εκ νέου Διαμόρφωσης Mac... 1 Εγκατάσταση του λογισμικού FreeAgent... 4 Aσφαλής αφαίρεση μονάδων δίσκου... 9 Διαχείριση των μονάδων
Ενημερώσεις λογισμικού Οδηγός χρήσης
Ενημερώσεις λογισμικού Οδηγός χρήσης Copyright 2008 Hewlett-Packard Development Company, L.P. Η ονομασία Windows είναι σήμα κατατεθέν της εταιρείας Microsoft Corporation στις Η.Π.Α. Οι πληροφορίες στο
Εγχειρίδιο Χρήσης V3.0
ΕΦΑΡΜΟΓΗ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΕΧΟΜΕΝΟΥ Εγχειρίδιο Χρήσης V3.0 Πίνακας Περιεχομένων: 1. Σύνδεση με την συσκευή 3 1.1 Σύνδεση μέσω Wi-Fi Direct.... 3 1.2 Ενσύρματη σύνδεση (LAN) 3 1.3 Ασύρματη σύνδεση (WiFi).
MCSS Medical Center Support Systems. Setup Instructions
MCSS Medical Center Support Systems Setup Instructions Author: Dr. Alexander Patelis Version: 1.5.00 Code: MCSS_IN_003 Αθήνα, Ιούνιος 2010 2006 2010 Dragon Systems MCSS_IN_003 Page 1 / 89 Πίνακας Αλλαγών
Κουμπί επαναφοράς (RESET BUTTON) Οπές εγκατάστασης συσκευής στην επιτοίχια βάση
Οδηγός Εγκατάστασης και Λειτουργίας Έξυπνου Ασύρματου κουδουνιού πόρτας ZV400V Εμπρόσθια Όψη Συσκευής Οπίσθια Όψη Συσκευής Οπές εγκατάστασης συσκευής στην επιτοίχια βάση Αισθητήρας κίνησης Κάμερα Θύρα
ΣΥΝΔΕΣΗ ΚΑΤΑΓΡΑΦΙΚΟΥ ΣΤΟ INTERNET
ΣΥΝΔΕΣΗ ΚΑΤΑΓΡΑΦΙΚΟΥ ΣΤΟ INTERNET 1) Συνδέουμε το καταγραφικό και τον Η/Υ με το ίδιο ADSL Router. 2) Έπειτα θα πρέπει να βρούμε την IP διεύθυνση που έχει το Router. Για να το κάνουμε αυτό, ακολουθούμε
Διαχείριση Έργων Πληροφορικής Εργαστήριο
Διαχείριση Έργων Πληροφορικής Εργαστήριο «Εισαγωγή στο MS Project- Διάγραμμα Gantt» Μ.Τσικνάκης, Ρ.Χατζάκη Ε. Μανιαδή, Ά. Μαριδάκη 1. Εισαγωγή στο Microsoft Project To λογισμικό διαχείρισης έργων MS Project