Ο όρος "custom ROM" είναι λίγο πολύ γνωστός στους ιδιοκτήτες Android συσκευών. Οι περισσότεροι έχουμε δοκιμάσει πολλές, αρκετοί έχουμε καταλήξει στην αγαπημένη μας και άλλοι ψαχνόμαστε ακόμα, όμως όλοι συμφωνούμε ότι οι custom ROM είναι ένα τεράστιο και ιδιαίτερα σημαντικό κεφάλαιο για το Android και τους χρήστες του.
Στην περίπτωση λοιπόν που δοκιμάσατε διάφορες ROM αλλά με καμία δε μείνατε 100% ευχαριστημένοι, ελάτε να δούμε πώς θα φτιάξουμε τη δική μας custom ROM για τη συσκευή μας, χωρίς να χρειαστεί να γράψουμε ούτε μία γραμμή κώδικα! Το μόνο που χρειάζεται για να τα καταφέρουμε είναι να είμαστε εξπέρ στην τέχνη:
- του διπλού κλικ και
- της αντιγραφής και επικόλλησης.
Στο πρώτο μέρος αυτής της σειράς άρθρων, θα δείτε το σκεπτικό γύρω από την κατασκευή μιας custom ROM, τη μεθοδολογία που θα ακολουθήσουμε, αλλά και τα πρώτα μας βήματα, τα οποία αφορούν την προσθαφαίρεση αρχείων και εφαρμογών.
Ο σωστός δρόμος...
Αν γνωρίζαμε τη "γλώσσα" του Android, θα έπρεπε να κατεβάσουμε τον κώδικά του, να τον κάνουμε compile για τη συσκευή μας και να διορθώσουμε τα προβλήματα που θα προκύψουν, όπως η λειτουργία της κάμερας που είναι σύνηθες. Αυτό που θα προέκυπτε είναι μία καθαρή ROM σαν αυτή που "φοράνε" οι Nexus συσκευές την οποία αργότερα θα έπρεπε να διαμορφώσουμε ανάλογα με τα γούστα μας.
Επειδή έχω δοκιμάσει πολλές φορές να κάνω compile, θα πρέπει να σας πω ότι τις μισές φορές δε θα γίνει με επιτυχία και τις άλλες μισές θα είναι τέτοια τα προβλήματα της ROM που δεν ξέρεις από πού να αρχίσεις για να τα διορθώσεις. Οπότε ο κλασικός τρόπος απορρίπτεται μιας και δεν έχουμε τέτοιες γνώσεις, αν θέλετε όμως να δοκιμάσετε διαβάστε τα απαραίτητα για το στήσιμο στον υπολογιστή σας, ή δοκιμάστε το CM Compiler.
... και ο παράδρομος!
Για να αποφύγουμε λοιπόν το compile, μας αρκεί να βρούμε μία έτοιμη custom ROM στο ίντερνετ για να τη χρησιμοποιήσουμε ως βάση. Η ROM που θα διαλέξουμε θα πρέπει:
- να είναι κατασκευασμένη για τη συσκευή μας
- να λειτουργεί σωστά, δηλαδή αν σε αυτή που θα επιλέξουμε δεν λειτουργεί η κάμερα, τότε ούτε στη ROM μας θα λειτουργεί.
- να περιέχει το περιβάλλον που θέλουμε να έχουμε (Sense, Touchwiz κλπ.)
Προσωπικά θα επέλεγα:
- μία "καθαρή" ROM κατασκευασμένη απευθείας από τον κώδικα του Android (AOSP)
- ή μία stock ROM από τον κατασκευαστή της συσκευής μου
- ή μία ROM εγνωσμένης αξίας όπως η CyanogenMod ή η AOKP.
Μπορείτε για παράδειγμα να βρείτε μία ωραία βάση για το Nexus S εδώ, για το Galaxy Nexus εδώ και για πολλές ακόμα συσκευές στο XDA, για να ξεκινήσετε.
Ξεκινάμε!
Προσοχή!: Η χρήση των οδηγιών που θα διαβάσετε παρακάτω, όπως και στα επόμενα άρθρα για την κατασκευή μιας custom ROM είναι αποκλειστικά δική σας ευθύνη. Καμία ευθύνη δε φέρει η ιστοσελίδα ή ο συντάκτης για οποιοδήποτε πρόβλημα δημιουργηθεί σε οποιαδήποτε συσκευή, χρησιμοποιώντας τις παρακάτω οδηγίες.
Αφού επιλέξαμε τη ROM που θέλουμε να χρησιμοποιήσουμε και κατεβάσαμε το .zip της στον υπολογιστή μας, την αποσυμπιέζουμε σε ένα φάκελο. Εκεί μέσα θα βρούμε:
- το φάκελο "META-INF"
- το φάκελο "system"
- και το αρχείο "boot.img"
Αυτό που μας ενδιαφέρει είναι ο φάκελος "system" και μέσα σε αυτόν βρίσκονται όλα τα αρχεία που θέλουμε να προσθέσουμε, να αφαιρέσουμε αλλά και οι ρυθμίσεις που θα βελτιώσουμε, οπότε αγνοούμε τα υπόλοιπα και δεν τα πειράζουμε.
Αρχικά θα πρέπει να αποφασίσουμε τι θέλουμε να κάνουμε στη ROM μας για να τη φέρουμε στα μέτρα μας. Έχουμε τη δυνατότητα:
- να προσθέσουμε και να αφαιρέσουμε εφαρμογές, ήχους και γραμματοσειρές
- να κάνουμε root
- να δημιουργήσουμε το δικό μας theme
- να κάνουμε κάποιες διορθώσεις ή βελτιώσεις
- να δώσουμε όνομα στη ROM μας
- και πολλά ακόμη
Βήμα πρώτο: Προσθαφαίρεση εφαρμογών
Αφού αποφασίσουμε ποιες εφαρμογές θέλουμε να περιέχει η ROM μας και ποιες όχι, πηγαίνουμε στη διαδρομή "system/app" και τις αφαιρούμε διαγράφοντας τα αντίστοιχα .apk μαζί με τα ομώνυμα .odex τους, αν υπάρχουν.
Για να προσθέσουμε μια εφαρμογή στη ROM μας θα πρέπει να βάλουμε το .apk της μέσα στο φάκελο "app", σε αυτή την περίπτωση όμως υπάρχει μια μικρή διαφορά. Οι εφαρμογές που περιέχει ο φάκελος αυτός, λειτουργούν με ανώτερα δικαιώματα από ότι αυτές που εγκαθιστούμε μόνοι μας με την κλασική μέθοδο. Πρέπει λοιπόν να αλλάξουμε τα δικαιώματα των εφαρμογών αυτών με τα σωστά. Αυτό γίνεται άμεσα με ένα τερματικό ή cmd (ανάλογα το λειτουργικό που χρησιμοποιούμε) μπαίνοντας στο φάκελο "app" και δίνοντας την εντολή "chmod 644 xxxxxx.apk".
Μπορούμε όμως να τα αλλάξουμε και αφού εγκαταστήσουμε τη ROM στη συσκευή μας. Μόλις ελέγξουμε ποιες εφαρμογές δε λειτουργούν, ανοίγουμε έναν file explorer όπως τον ES, πηγαίνουμε στη διαδρομή "system/app" της συσκευής μας, βρίσκουμε την εφαρμογή που θέλουμε και πατάμε παρατεταμένα πάνω στο εικονίδιό της, επιλέγουμε "Ιδιότητες", "Αλλαγή" και ρυθμίζουμε τις επιλογές μας όπως φαίνονται στην εικόνα παρακάτω. Μετά από μία επανεκκίνηση ξαναδοκιμάζουμε και αν ακόμα δε λειτουργούν θα πρέπει να τις αφαιρέσουμε.
Φυσικά θα αναρωτιέστε ποιες εφαρμογές μπορούμε να διαγράψουμε από τη ROM μας, χωρίς να έχουμε πρόβλημα. Παρακάτω σας παρουσιάζουμε μια λίστα με αυτές που έχουμε αφαιρέσει κατά καιρούς χωρίς να έχει συμβεί κάτι απρόοπτο (πάντα με επιφύλαξη).
Συμβουλή: Για κάθε .apk που διαγράφετε, αφαιρέστε επίσης και το ανάλογο .odex αρχείο, αν υπάρχει, καθώς είναι πλέον άχρηστο.
Βήμα δεύτερο: Προσθαφαίρεση λοιπών αρχείων
Με τον ίδιο τρόπο αφαιρούμε και προσθέτουμε εικόνες, ήχους και άλλα αρχεία χωρίς την ιδιαιτερότητα των δικαιωμάτων. Στο φάκελο "media" υπάρχουν όλα όσα αφορούν τα πολυμέσα, έτσι λοιπόν:
- στη διαδρομή "system/media/audio" θα βρείτε τα αρχεία ήχου χωρισμένα σε ήχους ρολογιού (alarms), ειδοποιήσεων (notifications), κλήσεων (ringtones) και συστήματος (ui),
- στη διαδρομή "system/media/video" θα βρείτε μερικά βίντεο τα οποία δε χρησιμεύουν σε τίποτα ιδιαίτερο και μπορούν να διαγραφούν όλα,
- ενώ οι γραμματοσειρές βρίσκονται στο φάκελο "fonts" και το bootanimation στο φάκελο "media" αλλά για αυτά θα μιλήσουμε σε επόμενο άρθρο με θέμα το Theming.
Συμβουλή: Μην ξεχάσετε να αφήσετε τουλάχιστον έναν ήχο σε κάθε κατηγορία για την ομαλή λειτουργία του συστήματος.
Στο επόμενο μέρος
Είδαμε λοιπόν πόσο εύκολο είναι να προσθέτουμε και να αφαιρούμε αρχεία και εφαρμογές στη ROM μας, είδαμε επίσης και την ιδιαιτερότητα με τα δικαιώματα (permissions) των εφαρμογών που βάζουμε στο system. Αφού τελειώσαμε με τις προσθήκες λοιπόν, στο επόμενο μέρος θα δούμε πώς μπορούμε να φτιάξουμε τα δικά μας εικονίδια και γενικότερα να δημιουργήσουμε το προσωπικό μας theme για τη ROM.
Υ.Γ. Περιμένουμε τις προτάσεις και τα σχόλιά σας για να ολοκληρώσουμε όσο πιο σφαιρικά μπορούμε αυτή τη σειρά άρθρων.