Ένας εύκολος τρόπος για να τρέξουμε τα δικά μας script στο Android, χωρίς την ενεργοποίηση του init.d στον πυρήνα του!


Όπως έχουμε πει πολλές φορές στο παρελθόν ένας από τους λόγους επιτυχίας του Android είναι η πλήρης παραμετροποίηση που μπορεί να υποστεί. Εκτός όμως από τις φανερές αλλαγές που πετυχαίνουμε με τους διάφορους launcher, μπορούμε να παραμετροποιήσουμε και το εσωτερικό του συστήματός μας, για να ρυθμίσουμε τα χαρακτηριστικά του όπως ταιριάζουν σε εμάς αν για παράδειγμα θέλουμε καλύτερες επιδόσεις ή περισσότερη αυτονομία.


Ένας εύκολος τρόπος για να αλλάξουμε αυτές τις ρυθμίσεις είναι τα λεγόμενα script και για να τα χρησιμοποιήσουμε πρέπει να ενεργοποιήσουμε την υποστήριξη του init.d στον πυρήνα (kernel) του Android.


Τι είναι τα script;
Είναι αρχεία κειμένου τα οποία είναι συνήθως γραμμένα σε bash και περιέχουν απλές εντολές τερματικού. Με αυτά μπορούμε να κάνουμε βελτιώσεις:

  • στη μπαταρία
  • στο σήμα
  • στο GPS
  • στις επιδόσεις
  • και ότι άλλο μπορούμε να φανταστούμε, αρκεί να το προσθέσουμε στον κώδικα.

Ένα απλό παράδειγμα είναι το παρακάτω:


1 #!/system/bin/sh
2 #Add a line in post_boot.sh
3
4 if [ -e /system/etc/post_boot.sh ]; then
5 echo "/system/etc/init.d/*" >> /system/etc/post_boot.sh



Στις πρώτες γραμμές με τη δίεση (#) υπάρχουν οι πληροφορίες για το script μας. Δηλώνουμε δηλαδή οτι είναι ένα αρχείο bash και το τι κάνει, ενώ στις επόμενες είναι ο κώδικας που στην προκειμένη περίπτωση σημαίνει: "Αν υπάρχει το αρχείο post_boot.sh στη διαδρομή /system/etc, τότε πρόσθεσε μέσα του τη γραμμή: /system/etc/init.d". Είναι γενικά εύκολα να διαβάσουμε τι κάνουν αρκεί να ξέρουμε 15-20 εντολές της κονσόλας του Linux (και του Android στην προκειμένη περίπτωση).


Πώς τα χρησιμοποιούμε χωρίς init.d;
Η υποστήριξη του init.d από τον πυρήνα του Android είναι το χαρακτηριστικό που μας δίνει τη δυνατότητα να τρέξουμε τα δικά μας script, δεν είναι όμως δεδομένη, για αυτό και θα δείτε κάποιες ROM να διαφημίζουν οτι διαθέτουν αυτή την ιδιότητα. Ως γνωστόν όμως, όσο πιο πολύ πειράζεις το σύστημά σου, τόσο πιο ασταθές γίνεται και έτσι βρέθηκε ένας τρόπος να τα καταφέρουμε χωρίς να επέμβουμε στον πυρήνα, με τη μόνη προϋπόθεση η συσκευή μας να είναι rooted.

Η λύση είναι, "να πούμε" στο αρχείο που είναι υπεύθυνο για την επανεκκίνηση της συσκευής, να τρέξει και όλα τα script που έχουμε αποθηκευμένα σε αυτήν. Θεωρητικά μπορεί να δουλέψει σε όλες τις ROΜ του Android αρκεί να μάθουμε ποιο είναι αυτό το αρχείο. Θα το βρούμε στη διαδρομή /system/etc και εάν στη δική σας συσκευή υπάρχει ένα από τα:

  • init.qcom.post_boot.sh
  • init.post_boot.sh
  • post_boot.sh

μπορείτε να κατεβάσετε και να φλασάρετε (με δική σας ευθύνη) μέσω recovery το αρχείο Easy InitD από εδώ: Download

Για τους υπόλοιπους, αρκεί να βρείτε ποιο αρχείο περιέχει τις λέξεις "post boot" και άρα διαχειρίζεται το reboot και να προσθέσετε στο τέλος του (επίσης με δική σας ευθύνη), τη γραμμή:
/system/etc/init.d/*
Αφού το κάνετε, μπορείτε να βάλετε όποιο script θέλετε στη διαδρομή /system/etc/init.d και αυτό θα τρέξει αυτόματα σε κάθε επανεκκίνηση. Έτσι δεν πειράζουμε το σύστημά μας και μπορούμε να βγάζουμε και να βάζουμε τα script με ευκολία στη συσκευή μας.

Οποιοσδήποτε άλλος τρόπος μέχρι σήμερα προϋποθέτει μεγάλες αλλαγές στον πυρήνα, μέχρι και αντικατάστασή του. Αυτός ο τρόπος, αν και δεν ενεργοποιεί το init.d για να χρησιμοποιήσουμε για παράδειγμα το Swapper, είναι μία εύκολη και ασφαλής λύση για τη χρήση των script μας. Δοκιμάστε το και επωφεληθείτε.

Περισσότερες πληροφορίες στο νήμα του στο XDA.

Σχόλια

  1. Τα script ποια μορφη αρχειου εχουν;
    Εκτος απο τα tweaks,μπορω να το προγραμματισω για παραδειγμα να μου ανοιγει μια συγκεκριμενη εφαρμογη κατα το boot ή ακομα και να στελνει μνμ σε συγκεκριμενη επαφη;

    ΑπάντησηΔιαγραφή
    Απαντήσεις
    1. Όσα περιγράφεις γίνονται. Τα script είναι text αρχεία με την κατάληξη .sh. Μπορείς να τα ανοίξεις και να τα επεξεργαστείς με το notepad++ στα windows και με τον απλό επεξεργαστή κειμένου στο linux.

      Διαγραφή

Δημοσίευση σχολίου

Διαβάστε επίσης...

Φεύγω από την Google | Αντικαθιστούμε το Google Home Hub (Google Assistant) με ένα tablet και τον Κίτσος Assistant

Android | Παίξε τα παιχνίδια του PlayStation στο Android smartphone ή tablet σου με το PS4 Remote Play!

Πέντε τρόποι για να ξεκλειδώσεις τη συσκευή σου αν έχεις ξεχάσει το Μοτίβο ή το PIN

Sharp Aquos Crystal: Το smartphone που ψάχνουμε μόλις δημιουργήθηκε από τη Sharp

Android | Άδειασε το πορτοφόλι σου από κάρτες μέλους και εισιτήρια και τακτοποίησέ τα σε μία εφαρμογή στο κινητό σου

Οδηγός αγοράς | Τα καλύτερα Android smartphone του 2018 για το 2019

Android | Οι καλύτερες προτάσεις για να βλέπεις YouTube χωρίς διαφημίσεις

3D Printing | Δημιουργούμε μοναδικά φωτιστικά εκτυπώνοντας τις φωτογραφίες μας σε 3D!

Android | Δε λαμβάνεις αναβαθμίσεις στη συσκευή σου; Μπορεί να φταίει η Wind!

Android Basics | Τι είναι το πρόγραμμα Android One, ποια τα πλεονεκτήματα και ποια τα αρνητικά του;