Εισαγωγή στη δημιουργία mobile εφαρμογών για Android

dimitris | Τρί, 08/23/2011 - 00:41 | 25' | 3

Τα βασικά βήματα για την εγκατάσταση και παραμετροποίηση της πλατφόρμας ανάπτυξης για mobile εφαρμογές Android με το Eclipse!

Του  Παναγιώτη Χρήστου *

Σε αυτό το how-to, στόχος μας είναι να φτιάξουμε ένα πλήρες σύστημα ανάπτυξης για εφαρμογές Android χρησιμοποιώντας το Android SDK starter package και το περιβάλλον ανάπτυξης Eclipse. Στο παράδειγμα που θα δούμε παρακάτω, θα περιγράψουμε τα βήματα που χρειάζονται να κάνετε εσείς, ώστε να μετατρέψετε τον υπολογιστή σας σε μια πλατφόρμα ανάπτυξης για εφαρμογές Android. Θα περιγράψουμε πως θα εγκαταστήσουμε το  Android SDK σε ένα σύστημα που τρέχει το λειτουργικό Ubuntu 10.10 και θα δούμε αναλυτικά πως αναπτύσσουμε εφαρμογές χρησιμοποιώντας το Eclipse 3.5 (Galileo) ως περιβάλλον ανάπτυξης (IDE) και την Java ως γλώσσα προγραμματισμού.

Τι είναι το Android

Το  Android είναι μια “στοίβα” λογισμικού για φορητές συσκευές η οποία περιλαμβάνει το λειτουργικό σύστημα, τις εφαρμογές καθώς και το επίπεδο λογισμικού (middleware) που διασυνδέει το λειτουργικό σύστημα με τις εφαρμογές. Το επίπεδο middleware περιλαμβάνει διάφορες βιβλιοθήκες C/C++ καθώς και κάποια framework APIs που δίνουν την δυνατότητα στους προγραμματιστές να χρησιμοποιήσουν διάφορα χαρακτηριστικά της φορητής συσκευής. Το Android βασίζεται στην έκδοση 2.6 του πυρήνα του Linux για να υλοποιήσει υπηρεσίες όπως ασφάλεια, διαχείριση μνήμης, διαχείριση διεργασιών και δικτύου. Επίσης, ο πυρήνας Linux  είναι υπεύθυνος για την επικοινωνία της φορητής συσκευής με τα υπόλοιπα επίπεδα της στοίβας λογισμικού.

Εγκατάσταση Android SDK

Στην ενότητα αυτή θα περιγράψουμε τα βασικά βήματα για την εγκατάσταση του Android SDK και την ρύθμισή του για πρώτη φορά.  Πριν την εγκατάσταση  του Android SDK, πρέπει να βεβαιωθείτε ότι ο υπολογιστής σας έχει εγκατεστημένα την Java και το Eclipse. Σε περίπτωση που δεν είναι εγκατεστημένα, πρέπει να κάνετε τα παρακάτω βήματα:

Εάν τρέχετε 64-bit διανομή στο σύστημα ανάπτυξης, τότε πρέπει να εγκαταστήσετε το πακέτο ia32-libs χρησιμοποιώντας το διαχειριστή πακέτων apt-get. Επομένως, ανοίγετε ένα τερματικό και πληκτρολογείτε την εντολή:

sudo apt-get install ia32-libs

Στη συνέχεια πρέπει να εγκαταστήσετε τη Java. H εντολή που κάνει αυτό για σας ειναι η εξής:

sudo apt-get install sun-java6-jdk

Επόμενο βήμα είναι να εγκαταστήσετε το περιβάλλον ανάπτυξης Eclipse. Αυτό μπορεί να γίνει είτε από τα αποθετήρια του Ubuntu, χρησιμοποιώντας τον διαχειριστή πακέτων Synaptic Package Manager είτε να κατεβάσετε την αντίστοιχη έκδοση του  Eclipse (3.4 ή νεότερη) από το http://www.eclipse.org/ downloads.

Έχοντας βεβαιωθεί ότι εγκαταστάθηκαν επιτυχημένα η Java και το Eclipse, προχωράμε στην εγκατάσταση του Android SDK και Android Development Tools (ADT) plugin. To ADT είναι απαραίτητο για να λειτουργήσει το Eclipse με το SDΚ. Το πρώτο βήμα για την εγκατάσταση του περιβάλλοντος ανάπτυξης για Android εφαρμογές είναι να κατεβάσετε το Android SDK starter package από το http://developer.android.com/sdk/index.html. 

Το Android SDK starter package δεν είναι ένα πλήρες περιβάλλον ανάπτυξης, αλλά περιλαμβάνει τα βασικά εργαλεία μέσω των οποίων μπορεί να εγκαταστήσει και τα υπόλοιπα εργαλεία μέσω διαδικτύου. Μετά την ολοκλήρωση του κατεβάσματος του  Android SDK στον υπολογιστή σας, αποσυμπιέστε το αρχείο σε κάποια ασφαλή περιοχή του υπολογιστή. Μετά την αποσυμπίεση του αρχείου δημιουργείται ένας κατάλογος στον υπολογιστή σας με το όνομα android-sdk-<machine-platform>, ο οποίος περιέχει τα αρχεία του  Android SDK. Το μονοπάτι με τα αποσυμπιεσμένα αρχεία θα το χρειαστείτε αργότερα για την εγκατάσταση του ADT plugin ή για να χρησιμοποιήσετε κάποιο από τα εργαλεία του SDK.

Ρύθμιση του Eclipse

Μετά την ολοκλρωση της εγκατάστασης του SDK σειρά έχει η ρύθμιση του  Eclipse και η εγκατάσταση του ADT plugin. Το τελευταίο είναι ένα plugin για το  Eclipse IDE το οποίο δίνει στους προγραμματιστές ένα ισχυρό και ενοποιημένο περιβάλλον για την ανάπτυξη εφαρμογών για  Android. Το ADT plugin επεκτείνει τις δυνατότητες του  Eclipse και μας δίνει την δυνατότητα να δημιουργούμε νέα Android projects γρήγορα, να φτιάχνουμε το User Interface της εφαρμογης, να προσθέτουμε νεα συστατικά (components) βασισμένα στο Android Framework API και να αποσφαλματώνουμε τις εφαρμογές μας χρησιμοποιώντας τα Android SDK tools.

Η τελευταία έκδοση του  ADT plugin που είναι διαθέσιμη στο διαδίκτυο είναι η 0.9.9. Για το κατέβασμα και την εγκατάσταση του ADT plugin υπάρχουν δύο τρόποι, ο ένας αποκλειστικά μέσα από το Eclipse και ο άλλος χρησιμοποιώντας πάλι το Eclipse αλλά με το κατέβασμα του αρχείου να γίνεται χειροκίνητα από το διαδίκτυο. Στο συγκεκριμένο παράδειγμα έχουμε εγκαταστήσει το  Eclipse IDE 3.5 (Galileo), οπότε θα επιλέξουμε τον πρώτο τρόπο. Παρακάτω παραθέτουμε τα βήματα που απαιτούνται για την εγκατάσταση του ADT plugin μέσω του Eclipse IDE 3.5.

Αρχικά, τρέξτε το Eclipse IDE και επιλέξτε Help --> Install New Software.

Στο παράθυρο Available Software που ανοίγει, πατήστε το Add.

Στο παράθυρο  Add Site που εμφανίζεται, βάζετε στο πεδίο “Name” ένα όνομα για το απομακρυσμένο site (π.χ. Android plugin) και στο πεδίο “Location” βάζετε το εξής URL: 

https://dl-ssl.google.com/android/eclipse/

και στη συνέχεια πατήστε ΟΚ.


1   Οι ρυθμίσεις που πρέπει να κάνετε στο παράθυρο Add Site κατά την διάρκεια της εγκατάστασης Android Development Tools plugin.

Αν όλα πάνε καλά, πηγαίνοντας πίσω στο παράθυρο Available Software, θα πρέπει πλέον να βλέπετε ότι στη λίστα έχει προστεθεί το “Developer Tools”.

Στη συνέχεια επιλέξετε το Developer Tools. Αυτόματα θα επιλέχθουν τα φωλιασμένα εργαλεία Android DDMS και Android Development Tools.

Στη συνέχεια πατήστε Next. Στο παράθυρο Install Details θα πρέπει να βλέπετε ότι εμφανίζονται πλέον τα Android DDMS και Android Development Tools.

Στη συνέχεια πατήστε Next για αποδοχή των όρων χρήσης και εγκατάσταση όλων των εξαρτήσεων και μετά πατήστε Finish.

Τελευταίο βήμα για την ολοκλήρωση της εγκατάστασης του  Android Development Tools plugin είναι να επανεκκινήσετε τον Eclipse.

Μετά την επιτυχή εγκατάσταση του ADT plugin, το επόμενο βήμα είναι να ρυθμίσετε τον Eclipse ώστε να δείχνει στο κατάλογο εγκατάστασης του Android SDK και συγκεκριμένα στο android-sdk-<machine-platform>. Τα βήματα που απαιτούνται να γίνουν από εσάς είναι τα παρακάτω:

Αρχικά επιλέξετε Window > Preferences.

Στη συνέχεια από το αριστερό μενού επιλέξετε Android.

Επόμενο βήμα είναι να συμπληρώσετε το πεδίο “SDK Location”, επιλέγοντας το μονοπάτι που εγκαταστήσατε το Android SDK κάνοντας κλικ στο κουμπί  Browse. Τέλος, πατήστε Apply και μετά ΟΚ.


2   Οι ρυθμίσεις που πρέπει να κάνετε στον Eclipse ώστε να δείχνει στο κατάλογο εγκατάστασης του Android SDK.

Εγκατάσταση του Android SDK

Για να έχετε ένα πλήρες σύστημα ανάπτυξης εφαρμογών Android, θα πρέπει να εγκαταστήσετε την πλατφόρμα για την οποία επιθυμείτε να αναπτύξετε εφαρμογές καθώς και τα επιπλέον εργαλεία που θα χρειαστείτε κατά την ανάπτυξη. Η διαδικασία της εγκατάστασης της κατάλληλης πλατφόρμας και των επιπλέον εργαλείων είναι μια πολύ απλή και γρήγορη διαδικασία που μπορεί να γίνει μέσω ενός εργαλείου του Android SDK starter package, το οποίο ονομάζεται Android SDK and AVD Manager.

Πριν όμως δούμε ακριβώς πως γίνεται η διαδικασία της εγκατάστασης μέσω του εργαλείου Android SDK and AVD Manager, πάμε να δούμε τι μας προσφέρουν για εγκατάσταση τα αποθετήρια του Android SDK. Το πιο βασικό στοιχείο (component) που μας προσφέρουν για εγκατάσταση τα αποθετήρια του SDK είναι το SDK Tools. To SDK Tools περιλαμβάνει όλα τα εργαλεία που απαιτούνται για την ανάπτυξη, την αποσφαλμάτωση και τον έλεγχο της σωστής λειτουργίας της Android εφαρμογής. Το SDK Tools εγκαθίσταται στον υπολογιστή σας με την εγκατάσταση του Android SDK starter package, οπότε στο σημείο αυτό εσείς δεν πρέπει να κάνετε κάτι παραπάνω.

Το επόμενο component είναι το SDK Android Platforms, το οποίο περιλαμβάνει όλες τις γνωστές πλατφόρμες Android. Εσείς θα πρέπει να εγκαταστήσετε τουλάχιστον μια, γιατί είναι απαραίτητη για να γίνει η μεταγλώττιση του κώδικά σας  και για να μπορέσετε να τρέξετε την εφαρμογή σας στον προσομοιωτή της Android συσκευής. Επιπλέον, σας δίνει την δυνατότητα να εργάζεστε εκτός δικτύου και να διαβάζετε ότι πληροφορία χρειάζεστε για τα εργαλεία του SDK μέσω του Eclipse. Αυτό μπορείτε να το επιτύχετε εγκαθιστώντας το Documentation component.

Ένα άλλο βοηθητικό στοιχείο που μπορείτε να εγκαταστήσετε είναι το Samples component. Το component αυτό σας δίνει κάποια παραδείγματα από Android εφαρμογές, οι οποίες θα σας βοηθήσουν να εξοικειωθείτε περισσότερο με την ανάπτυξη εφαρμογών Android άλλα και να χρησιμοποιήσετε τμήματα κώδικα που χρειάζεστε στην δικιά σας εφαρμογή.

Στο Samples component υπάρχουν όλες οι εκδόσεις του πηγαίου κώδικα για όλες τις Android πλατφόρμες.

Το επόμενο component είναι το Usb Driver και είναι απαραίτητο σε όσους αναπτύσσουν εφαρμογές σε περιβάλλον Windows.

Ένα σημαντικό component για όσους θέλουν να διαχειρίζονται χάρτες μέσω της εφαρμογής τους είναι το Google APIs.

Τέλος, για όσους θέλουν να δημοσιεύουν τις εφαρμογές τους, πρέπει να εγκαταστήσουν το Additional SDK platforms component έτσι ώστε να δοκιμάζουν σε ποιες πλατφόρμες τρέχει χωρίς προβλήματα η εφαρμογή τους.

Μετά την εξερεύνηση για το τι μπορούμε να εγκαταστήσουμε από τα αποθετήρια του Android SDK, ήρθε η ώρα να εγκαταστήσουμε μερικά από αυτά με την βοήθεια του εργαλείου Android SDK and AVD Manager. Τα βήματα που πρέπει να ακολουθήσετε για την εγκατάσταση κάποιου component είναι τα εξής:

Στο Eclipse,  επιλέξτε Window > Android SDK and AVD Manager.

Μετά την εκκίνηση του εργαλείου Android SDK and AVD Manager, πρέπει να επιλέξετε από το αριστερό μενού το Available Packages έτσι θα μπορέσετε να δείτε όλα τα διαθέσιμα components που μπορείτε να κατεβάσετε και να εγκαταστήσετε στον υπολογιστή σας.


3   Τα διαθέσιμα πακέτα που μπορείτε να εγκαταστήσετε από τα αποθετήρια του Android SDK.
 

Για να εγκαταστήσετε ένα συγκεκριμένο component πρέπει να το επιλέξετε και στη συνέχεια να πατήσετε Install Selected.

Το επόμενο βήμα είναι να επιβεβαιώσετε και να αποδεχτείτε τα components που θέλετε να εγκαταστήσετε και να πατήσετε Install Accepted.

Μετά την ολοκλήρωση και του τελευταίου βήματος, τα εγκατεστημένα components βρίσκονται κάτω από τον φάκελο του Android SDK.
 

Η Πρώτη μας Android εφαρμογή

Μετά την ολοκλήρωση όλων των παραπάνω βημάτων έχετε ένα πλήρες σύστημα πάνω στο οποίο μπορείτε να αναπτύξετε την πρώτη σας εφαρμογή για Android. Παρακάτω θα περιγράψουμε τα βήματα που πρέπει να ακολουθήσετε για να φτιάξετε την πρώτη σας εφαρμογή, η οποία δεν είναι άλλη από την εκτύπωση στην οθόνη της Android συσκευής του κλασικού μηνύματος “Hello World!”.

Αρχικά, για να μπορέσετε να τρέξετε την εφαρμογή σας στον Android προσομοιωτή (Emulator), θα πρέπει να δημιουργήσετε ένα Android Virtual  Device (AVD). Το Android Virtual  Device ορίζει μια εικόνα του συστήματος (system image) και τις ρυθμίσεις της συσκευής οι οποίες χρησιμοποιούνται απο τον Android προσομοιωτή. Τα βήματα που πρέπει να ακολουθήσετε για να δημιουργήσετε το δικό σας Android Virtual  Device είναι τα εξής:

Στο Eclipse, επιλέξτε από το μενού Windows > Android SDK and AVD Manager.


4   Εκκίνηση του Android SDK and AVD Manager μέσω του Eclipse.

Στο παράθυρο που εμφανίζεται, επιλέξετε από το αριστερό μενού Virtual Devices και πατήστε New.

Στο παράθυρο Create New Android Virtual  Device (AVD) που εμφανίζεται πρέπει να συμπληρώσετε ορισμένα πεδία. Στο πεδίο “Name” συμπληρώστε το όνομα του AVD, π.χ. myavd. Στο επόμενο πεδίο “Target” πρέπει να επιλέξετε ποια πλατφόρμα θέλετε να φορτώσει ο Android προσομοιωτής, στο παράδειγμά μας εμείς επιλέξαμε το Android 2.2 – API Level 8. Τα επόμενα πεδία είναι προαιρετικά και δεν θα μπούμε σε λεπτομέρειες για το συγκεκριμένο παράδειγμα. Μετά την συμπλήρωση των πεδίων “Name” και “Target” κάντε κλικ στο κουμπί  Create AVD.


5  Οι ρυθμίσεις που πρέπει να γίνουν κατά τη δημιουργία του Android Virtual  Device (AVD).

Μετά την δημιουργία του Android Virtual  Device σειρά έχει η δημιουργία ενός καινούργιου Android Project στο Eclipse. Τα βήματα που πρέπει να ακολουθήσετε είναι τα εξής:

Στο Eclipse, επιλέξτε File > New > Project.

Στο παράθυρο που εμφανίζεται θα δείτε έναν φάκελο με το όνομα “Android”, ο οποίος περιέχει το “Android Project”, επιλέξετε “Android Project” και πατήστε Next.

Στο νέο παράθυρο πρέπει να συμπληρώσετε τα παρακάτω πεδία: Στο πεδίο “Project name” δώστε ένα όνομα για το Project (π.χ. HelloAndroid) το οποίο θα είναι και το όνομα του φακέλου που θα περιέχει και τα αρχεία του Project. Το επόμενο πεδίο που πρέπει να συμπληρώσετε είναι το “Application name” που είναι το όνομα της εφαρμογής που θα εμφανίζεται στην οθόνη της συσκευής. Το πεδίο “Package name” είναι το package namespace κάτω από το οποίο θα αποθηκευτεί ο πηγαίος κώδικας της εφαρμογής, όπως ακριβώς γίνεται και στην Java. Στο συγκεκριμένο παράδειγμα χρησιμοποιήσαμε το package namespace “com.example.helloandroid”. Το τελευταίο πεδίο που πρέπει να συμπληρώσετε είναι το “Create Activity”, το “Activity” δεν είναι τίποτα άλλο από μια κλάση η οποία μπόρει να τρέξει και να κάνει μια συγκεκριμένη δουλειά. Η κλάση αυτή χρησιμοποιείται σχεδόν πάντα ως βάση για μια εφαρμογή. Στο παράδειγμά μας δώσαμε το όνομα HelloAndroid για το Activity. Τα υπόλοιπα πεδία τα αφήνουμε όπως ακριβώς είναι.
Μετά την συμπλήρωση των πεδίων αυτών πατήστε Finish για να ολοκληρωθεί η δημιουργία του “Android Project”.

Στη συνέχεια μέσα από το Package Explorer του Eclipse, πηγαίνετε  στο HelloAndroid > src > com.example.helloandroid και ανοίξτε το αρχείο HelloAndroid.java. 

Από τον κώδικα 1, παρατηρούμε ότι η κλάση βασίζεται στην κλάση Activity. Περισσότερα για την κλάση Activity θα πούμε στο επόμενο how-to, όπου θα αναλύσουμε με περισσότερες λεπτομέρειες μία Android εφαρμογής. Η συνάρτηση onCreate() καλείται όταν ξεκινάει το Activity σας και εκτελεί όλες τις αρχικοποιήσεις για το User Interface της εφαρμογής.

Για να μπορέσει ο κώδικας 1 να εκτυπώσει το μήνυμα “Hello World!” στην οθόνη πρέπει να προσθέσουμε ορισμένες γραμμές κώδικα ακόμα οι οποίες φαίνονται στον κώδικα 2 και είναι υπογραμμισμένες. Το TextView είναι μια κλάση η οποία χειρίζεται κείμενο και είναι υποκλάση της κλάσης View. Views ονομάζονται τα γραφικά αντικείμενα τα οποία απαρτίζουν το Android User Interface. Η γραμμή TextView tv = new TextView(this) δημιουργεί ένα αντικείμενο της κλάσης TextView.

Η επόμενη γραμμή ορίζει το περιεχόμενο που θέλετε το κείμενό σας να έχει μέσω της μεθόδου setText(). Τέλος η μέθοδος setContentView() εμφανίζει στην οθόνη το περιεχόμενο του κειμένου.

Κώδικας 1: HelloAndroid.java


package com.example.helloandroid;
import android.app.Activity;
import android.os.Bundle;
public class HelloAndroid extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

Κώδικας 2: Νέο HelloAndroid.java

package com.example.helloandroid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class HelloAndroid extends Activity {
   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       TextView tv = new TextView(this);
       tv.setText("Hello World!");
       setContentView(tv);
   }
}

Το επόμενο βήμα είναι να τρέξετε την εφαρμογή σας στον Android προσομοιωτή. Μέσα από τον Eclipse, πρέπει να επιλέξετε  Run > Run, στη συνέχεια το ADT plugin αυτόματα δημιουργεί το αρχείο ρυθμίσεων για την εκτέλεση της εφαρμογής και ξεκινάει τον Android προσομοιωτή. Για να ξεκινήσει ο Android προσομοιωτής χρειάζονται να περάσουν μερικά λεπτά. Όταν ξεκινήσει ο προσομοιωτής, τότε το ADT plugin κάνει εγκατάσταση της εφαρμογής και στη συνέχεια τρέχει την εφαρμογή καλώντας το Default Activity. Μετά την εκτέλεση της εφαρμογής θα πρέπει να δείτε κάτι σαν την παρακάτω εικόνα, Hello World.jpg.      


6  Το αποτέλεσμα που θα δείτε μετά την εκτέλεση της εφαρμογης στον προσομοιωτή του Android.
 

Επίλογος

Όπως είδαμε παραπάνω, η μετατροπή του υπολογιστή μας σε μια πλατφόρμα που μπορούμε να αναπτύσσουμε εφαρμογές Android είναι μία απλή και γρήγορη διαδικασία. Η εφαρμογή που παραθέσαμε παραπάνω είναι μια πολυ απλή εφαρμογή και ο λόγος που την παρουσιάσαμε είναι για να δούμε αν όλο το σύστημα που στήσαμε δουλεύει. Όπως είδαμε από το παράδειγμα που παρουσιάσαμε η ανάπτυξη εφαρμογών για συσκευές Android απαιτεί την πολύ καλή γνώση της γλώσσας προγραμματισμού Java.
 

* Ο Παναγιώτης είναι Ηλεκτρονικός Μηχανικός Η/Υ και περνάει την ώρα του δοκιμάζοντας διανομές και προγράμματα.

Φόρουμ
Δώσε αστέρια!

MO: 5 (ψήφοι: 1)

Σχόλια

Καλησπέρα,

    Ακολούθησα τα βήματα που περιγράφονται στον οδηγό και κατά την εκτέλεση (Run), αφού άνοιξε κανονικά ο εξομοιωτής μου έβγαλε το παρακάτω λάθος

[2011-11-25 17:38:56 - HelloAndroid] Installing HelloAndroid.apk...
[2011-11-25 17:41:15 - HelloAndroid] Failed to install HelloAndroid.apk on device 'emulator-5554!
[2011-11-25 17:41:15 - HelloAndroid] (null)
[2011-11-25 17:41:15 - HelloAndroid] Launch canceled!

Από ότι καταλαβαίνω το αρχείο .apk δημιουργήθηκε και αντιγράφηκε κανονικά, αλλά στην εγκατάσταση κάτι πήγε στραβά. Έχετε ιδέα τι μπορεί να έχω κάνει λάθος ??

Καλησπερα και απο εμενα...ηθελα να κανω μια ερωτηση...κατα την εγκαταστηση του ia32 εμεις που εχουμε 64bit debian συσηματα υπαρχει περιπτωση μετα απο καποιο d-u να παρουμε το συστημα στο χερι..?
 

Μου βγάζει λάθος στο σετάρισμα του eclipse αφού δώσω το url στο add site
kai τσεκάρω το Developer Tools επειτα παίρνω αυτό το μύνημα:

"Cannot complete the install because one or more required items could not be found.
  Software being installed: Android Development Tools 16.0.1.v201112150204-238534 (com.android.ide.eclipse.adt.feature.group 16.0.1.v201112150204-238534)
  Missing requirement: Android Development Tools 16.0.1.v201112150204-238534 (com.android.ide.eclipse.adt.feature.group 16.0.1.v201112150204-238534) requires 'org.eclipse.ui 3.6.2' but it could not be found"

Εχει αλλάξει κάτι στο url ή κάνω κάτι λάθος