Εγκατάσταση και παραμετροποίηση
Mobile Artemis
Η διαδικασία εγκατάστασης της εφαρμογής Mobile Artemis αποτελείται από τα εξής μέρη:
-
Εγκατάσταση IDE και Flutter
-
Λήψη του κώδικα του Mobile Artemis αλλά και Artemis Web
-
(Προαιρετικό) Δημιουργία Firebase project και διασύνδεσης της εφαρμογής με αυτό(προαιρετικό σε περίπτωση που ο χρήστης δεν ενδιαφέρεται να
λαμβάνει push
notifications για τα Hijacks που ανίχνευσε το ARTEMIS)
-
(Προεραιτικό) Προσθήκη credentials στο Artemis web για λήψη SMS μέσω του prosms.gr ή
διασύνδεση με
άλλο πάροχο(προαιρετικό σε περίπτωση που ο χρήστης δεν ενδιαφέρεται να λαμβάνει SMS)
-
Δημιουργία Android app bundle ή apk και iOS App Store Package για συσκευές με Android και iOS αντίστοιχα
Η εφαρμογή μπορεί να τρέξει στις παρακάτω εκδόσεις:
-
Android versions: 5.0 και νεότερες
-
iOS versions: 9.0 και νεότερες
Οι παραπάνω minimum εκδόσεις Android και iOS στις οποίες μπορεί να τρέξει η εφαρμογή μπορεί να αλλάξουν μελλοντικά λόγω νέων εκδόσεων των packages
και plugins που χρησιμοποιεί η εφαρμογή καθώς και του ίδιου του Flutter framework.
Εγκατάσταση Flutter και IDE
-
Εγκατάσταση Flutter
-
Για τη λήψη και εγκατάσταση του Flutter ακολουθήστε τον επίσημο οδηγό εγκατάστασης του Flutter ανάλογα με λειτουργικό σας σύστημα
στον παρακάτω σύνδεσμο: https://docs.flutter.dev/get-started/install
-
Μόλις ολοκληρωθεί η παραπάνω διαδικασία για να βεβαιωθείτε ότι η εγκατάσταση έγινε σωστά μπορείτε να τρέξετε την εντολή:
flutter doctor
Σε περίπτωση που έχετε ήδη εγκαταστήσει το Flutter βεβαιωθείτε ότι χρησιμοποιείτε την πιο πρόσφατη έκδοση του. Για να ελέγξετε τη version
του τρέξτε την εντολή:
flutter -–version
Για να λάβετε την τελευταία έκδοση του τρέξτε την εντολή:
flutter upgrade
-
Εγκατάσταση IDE
-
Κατεβάστε και εγκαταστήστε το Android Studio από το επίσημο
website
-
Σε περίπτωση που προτιμάτε το Visual Studio Code μπορείτε να το εγκαταστήσετε από
εδώ
Μόλις ολοκληρωθεί η εγκατάσταση του Android Studio ή του Visual Studio Code θα χρειαστεί να εγκαταστήσετε και το flutter plugin για το IDE που επιλέξατε παραπάνω.
Λήψη του κώδικα του Mobile Artemis αλλά και Artemis Web
-
Για να κάνετε λήψη του κώδικα της εφαρμογής για κινητά τρέξτε την εντολή
git clone git@github.com:FORTH-ICS-INSPIRE/artemis_mobile.git
-
Στο root folder του project που μόλις λάβατε τρέξτε την εντολή παρακάτω για να λάβετε τα προαπαιτούμενα που περιέχονται στο pubspec.yaml και
χρειάζεται η εφαρμογή για να τρέξει
flutter pub get
-
Προσθέστε το url του Artemis μέσα στο /lib/services/api_service.dart στο apiUrl
-
(Optional) Σε περίπτωση που θα θέλατε να χρησιμοποιήσετε τα push notifications θα χρειαστεί να κάνετε λήψη του κώδικα του Artemis Web
τρέχοντας την εντολή
git clone https://github.com/FORTH-ICS-INSPIRE/artemis-web.git
(Προαιρετικό) Δημιουργία Firebase project και διασύνδεσης της εφαρμογής με αυτό
-
Δημιουργήστε ένα νέο firebase project
εδώ
-
Εάν δεν έχετε ήδη εγκατεστημένο το Firebase CLI εγκαταστήστε το χρησιμοποιώντας τον επίσημο οδηγό εγκατάστασης
εδώ
-
Κάντε login στο firebase χρησιμοποιώντας το Google account σας με την εντολή
firebase login
-
Εγκαταστήστε το FlutterFire CLI τρέχοντας την εντολή
dart pub global activate flutterfire_cli
-
Για να χρησιμοποιήσετε το flutterfire CLI για να συνδέσετε το Mobile Artemis με το firebase project που δημιουργήσατε τρέξτε από το root
folder του project την εντολή
flutterfire configure
-
Ανοίξτε το αρχείο lib/services/push_notification_service.dart και προσθέστε την παρακάτω γραμμή
import 'firebase_options.dart';
-
Στο ίδιο αρχείο προσθέστε μέσα στην firebase initialize app τα παρακάτω options:
options: DefaultFirebaseOptions.currentPlatform,
-
Έπειτα θα χρειαστεί να δημιουργήσετε ένα private key για το service account σας. Μπορείτε να ακολουθήσετε τον επίσημο οδηγό
εδώ. Το κλειδί θα περιέχεται σε ένα json αρχείο.
-
Ανοίξτε το Artemis Web project και μέσα στο .env αρχείο προσθέστε το file path στο SERVICE_ACCOUNT_PATH
Για να λαμβάνετε push notifications σε iOS συσκευές θα πρέπει να κάνετε κάποια επιπλέον βήματα. Ακολουθείστε τον οδηγό
εδώ
(Προαιρετικό) Προσθήκη credentials στο Artemis web για λήψη SMS
Για την λήψη SMS υπάρχει ένα reference implementation με χρήση του prosms.gr.
Σε περίπτωση που επιλεγεί το prosms ως provider προσθέστε τα SMS_USERNAME, SMS_PASSWORD, και SMS_ORIGINATOR μέσα στο .env αρχείο στο Artemis Web
project
Για την χρήση άλλου παρόχου SMS θα χρειαστεί να τροποποιήσετε την sendSMS() μέσα στο apps/artemis-notification/src/main.ts στο Artemis Web
project.
Δημιουργία εκτελέσιμων για Android και iOS