background image

82 

 

παράμετρος  της  μεθόδου 

updateFromWeb 

προτιμήθηκε  να  είναι 

false 

ώστε 

της  καταχώρησης  των  νέων  εγγραφών  να  μην  προηγείται  διαγραφή  των 

τρεχουσών.  Με  την  ολοκλήρωση  της  διαδικασίας  εμφανίζεται  κατάλληλο 

μήνυμα  στον  χρήστη  και  εμφανίζεται  η  αρχική  οθόνη  της  εφαρμογής 

ενεργοποιώντας το 

Activity First Screen. 

 

Αρχικοποίηση –

 

Διεξαγωγή –

 

Ολοκλήρωση του παιχνιδιού

 

 

Η  αρχικοποίηση  του  παιχνιδιού  διαδέχεται  τη  καταχώρηση  των 

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

ConfigurationActivity 

περνάν  και  καταγράφονται  στην 

HomeActivity 

που  διαχειρίζεται  και  το 

παιχνίδι. Σε αυτήν δημιουργείται ένα νέο 

Thread 

στο οποίο ανοίγει ένα 

socket 

στο 

port 

που έχει επιλεγεί.  Σε αυτό το 

port 

αναμένονται συνδέσεις  από τους 

clients

.Η  διαδικασία  αυτή  ξεκινάει  με  κλικ  στο  πλήκτρο 

Connection 

της 

διεπαφής. 

 

Παράλληλα γίνεται και η αρχικοποίηση των ερωτήσεων με την μέθοδο 

initGame

.  Η  μέθοδος  αυτή  δημιουργεί  έναν  πίνακα  αντικειμένων 

Question 

καθώς και ένα αντικείμενο 

MyDBHandler

. Από το τελευταίο χρησιμοποιείται η 

μέθοδος 

makeQuestion 

η  οποία  λαμβάνει  σαν  παράμετρο  το  θέμα  της 

ερώτησης (τυχαία επιλογή από πίνακα συμβολοσειρών) καθώς και τα φίλτρα 

που  έχουν  οριστεί  για  το  περιεχόμενο  των  ερωτήσεων. 

H  makeQuestion 

διαμορφώνει

 

το  ερώτημα  προς την  βάση  δεδομένων  σύμφωνα  με  τα  φίλτρα 

που  δόθηκαν  και  λαμβάνει  το  αποτέλεσμα  σε  μορφή  αντικειμένου 

Movie.. 

Ανάλογα  με  το  θέμα  της  ερώτησης  διαμορφώνει  την  εκφώνηση  της  και 

επιλέγει  τυχαία  το  ποια  από  τις  πέντε  επιλογές  θα  είναι  η  σωστή.  Επίσης 

καταγράφεται  η  θέση  που  είναι  αποθηκευμένο  το 

poster 

της  ταινίας.  Οι 

εσφαλμένες  επιλογές  διαμορφώνονται  με  ανάκτηση  εγγραφών  για  άλλες 

ταινίες  (με  τυχαίο  τρόπο)  και  καταγραφή  στα  αντίστοιχα  πεδία  του 

αντικειμένου 

Question 

επιστρέφεται. 

 

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

κατάλληλα  η  διεπαφή  ώστε  να  εμφανίζονται  οι  χρήστες  που  έχουν  συνδεθεί 

σε 

ListView

.  Το 

ListView 

αυτό  χρησιμοποιεί  κατάλληλο 

Adapter 

ώστε  να