Προς το περιεχόμενο

Τι είναι το ADB, σε τι χρησιμεύει και πώς το χρησιμοποιώ;


saruman123

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

post-330623-0-24384900-1486848176_thumb.png

 

ADB σημαίνει Android Debug Bridge, δηλαδή “Γέφυρα Εντοπισμού Σφαλμάτων του Android” και είναι ένα πρόγραμμα που περιέχεται μέσα στο Android SDK. Με αυτό το εργαλείο μπορούμε να συνδεθούμε μέσω υπολογιστή στην Android συσκευή μας και να της στείλουμε εντολές μέσω τερματικού για την εκτέλεση εργασιών όπως:

 

Την απεγκατάσταση προεγκατεστημένων εφαρμογών.

Το αυτόματο backup και restore των εφαρμογών μας.

Μαζική εγκατάσταση εφαρμογών είτε στην εσωτερική είτε στην εξωτερική μνήμη.

Να επανεκκινήσουμε τη συσκευή μας σε fastboot ή revovery mode.

και γενικά να μεταφέρουμε, να τροποποιήσουμε, να διαγράψουμε αρχεία σε οποιονδήποτε φάκελο και κατάτμηση της συσκευής μας.

 

Για να χρησιμοποιήσουμε το ADB θα πρέπει:

 

Να κατεβάσουμε και να στήσουμε το Android SDK στον υπολογιστή μας.

https://developer.android.com/studio/index.html

 

Αν χρησιμοποιούμε Windows λειτουργικό σύστημα, να κατεβάσουμε και τον ADB driver της συσκευής μας

 

http://adbdriver.com/

 

https://forum.xda-developers.com/showthread.php?p=22915085

 

https://forum.xda-developers.com/showthread.php?t=2588979

 

http://download.clockworkmod.com/test/UniversalAdbDriverSetup6.msi

 

Να ανοίξουμε ένα τερματικό και να το οδηγήσουμε στο φάκελο που βρίσκεται το ADB.

Να κάνουμε το παρακάτω “Αρχικό Βήμα”, το οποίο και θα κάνουμε ΚΑΘΕ φορά που ανοίγουμε το ADB και πριν χρησιμοποιήσουμε τις εντολές που θα δούμε παρακάτω.

 

Αρχικό Βήμα

 

 

Ενεργοποιούμε τον “Εντοπισμό σφαλμάτων” στη συσκευή μας.

Συνδέουμε τη συσκευή μας μέσω USB στον υπολογιστή.

Ανοίγουμε ένα τερματικό.

Για να μπούμε στο φάκελο που βρίσκεται το ADB, εκτελούμε:

 

Windows:

 

cd C:\android-sdk-windows\platform-tools

 

Linux:

 

cd ~/android-sdk-linux/platform-tools

 

 

Για να πούμε στο ADB να προσαρτήσει τη συσκευή μας, εκτελούμε:

 

adb remount

 

 

Και για να πιστοποιήσουμε οτι τη συσκευή τη βλέπει το ADB, εκτελούμε:

 

adb devices

 

Αν μας απαντήσει με το serial number της συσκευής είμαστε εντάξει.

 

Προσοχή: Ότι κάνετε από εδώ και στο εξής είναι αποκλειστικά δική σας ευθύνη. Ο συντάκτης ή η ιστοσελίδα, δε φέρουν καμία ευθύνη για τυχόν ζημιά στη συσκευή σας. Όλες οι μέθοδοι έχουν δοκιμαστεί σε υπολογιστή μεUbuntu Linux λειτουργικό σύστημα και συσκευή Nexus S 4.0.3.

 

 

Παραδείγματα χρήσης του ADB

 

 

Προσάρτηση του /system ως εγγράψιμο

 

Για να μπορέσουμε να επέμβουμε στο system partition και να μεταφέρουμε αρχεία και εφαρμογές από και προς αυτό, θα πρέπει πρώτα να το προσαρτήσουμε ως εγγράψιμο. Αυτό γίνεται εύκολα με την παρακάτω εντολή:

 

mount -o rw,remount /dev/block/mtdblock3 /system

 

Εγκατάσταση / απεγκατάσταση, backup εφαρμογών και αρχείων

 

Με το adb μπορούμε να εγκαταστήσουμε μία εφαρμογή που κατά λάθος έχουμε διαγράψει, ή να απεγκαταστήσουμε μία άλλη που προκαλεί προβλήματα στο σύστημα. Μπορούμε να εγκαταστήσουμε μια εφαρμογή όπου και να βρίσκεται στον υπολογιστή μας, το πιο εύκολο όμως για το τερματικό είναι να τη βάλουμε στο φάκελο που βρίσκεται το adb (platform-tools) για να είναι πιο απλή η εντολή που θα δώσουμε.

 

Για την εγκατάσταση εφαρμογής στο data partition, στο χώρο δηλαδή που πηγαίνουν όλες οι εφαρμογές χρήστη δίνουμε:

 

adb install xxxxx.apk

 

Για την αναβάθμιση μιας υπάρχουσας εφαρμογής δίνουμε την εντολή:

 

adb install -r xxxxx.apk

 

Αν επίσης θέλουμε η εφαρμογή μας να εγκατασταθεί απευθείας στην SD κάρτα και η ROM μας το υποστηρίζει, δίνουμε:

 

adb install -s xxxxx.apk

 

 

Τέλος, αν θέλουμε να απεγκαταστήσουμε τελείως μια εφαρμογή από το σύστημα, δίνουμε:

 

adb uninstall xxxxx.apk

 

 

ενώ αν θέλουμε να παραμείνουν τα save file της εφαρμογής εγκατεστημένα, δίνουμε:

 

adb uninstall -k xxxxx.apk

 

Για την εγκατάσταση εφαρμογής στο system partition, στο χώρο όπου βρίσκονται οι εφαμοργές συστήματος δίνουμε:

 

adb push xxxxx.apk /system/app/

 

Με την παραπάνω εντολή (push) μπορούμε να στείλουμε στη συσκευή μας οποιοδήποτε τύπο αρχείου σε οποιοδήποτε partition. Για παράδειγμα αν θέλουμε να στείλουμε το αρχείο xxxxx.txt στο sdcard partition και μέσα στο φάκελο Downloads, θα πρέπει να δώσουμε την εντολή:

 

adb push xxxxx.txt /sdcard/Downloads

 

Αν θέλουμε να επαναφέρουμε το επίσημο αρχείο framework-res.apk γιατί εγκαταστήσαμε κάποιο ελαττωματικό θα δώσουμε την εντολή:

 

adb push framework-res.apk /system/framework/

 

Για να επαναφέρουμε όμως ένα αρχείο στη συσκευή μας θα πρέπει πρώτα να το έχουμε κάνει backup στον υπολογιστή. Για παράδειγμα αν θέλουμε να πάρουμε backup σε μία εφαρμογή συστήματος δίνουμε την εντολή:

 

adb pull /system/app/xxxxx.apk

 

Για να πάρουμε backup όλο το φάκελο system από τη συσκευή μας, δίνουμε την εντολή:

 

adb pull /system/

 

Ο φάκελος και η παραπάνω εφαρμογή θα εμφανιστούν στον ίδιο φάκελο που βρίσκεται το adb στον υπολογιστή μας. Μπορούμε λοιπόν να στείλουμε σε άλλο φάκελο στον υπολογιστή μας, απευθείας από την ίδια εντολή, συμπληρώνοντας το τέλος τη διαδρομή του φακέλου προορισμού. Για να πάρουμε backup λοιπόν σε μία εφαρmογή συστήματος την οποία θέλουμε να αποθηκεύσουμε κατευθείαν στο φάκελο "Backups" που βρίσκεται στο δίσκο "C" του υπολογιστή μας θα δώσουμε την εντολή:

 

adb pull /system/app/xxxxx.apk C:\Backups\

 

Έλεγχος του ενσωματωμένου τερματικού της συσκευής μέσω του ADB

 

Όπως οι υπολογιστές μας έχουν τερματικό ή γραμμή εντολων όπως λέγεται στα Windows, έτσι και το Android διαθέτει τη δική του κονσόλα τερματικού την οποία μπορούμε να ελέγξουμε απευθείας από το τερματικό του υπολογιστή μας. Αυτό γίνεται εύκολα δίνοντας την εντολή:

 

adb shell

 

Μετά την εντολή αυτή μπορούμε να μεταφέρουμε, να διαγράψουμε και να μεταποιήσουμε αρχεία της συσκευής και οι σημαντικότερες εντολές για τέτοιες απλές εργασίες είναι οι παρακάτω:

 

su (super user): Απόκτηση δικαιωμάτων διαχειριστή.

ls (list): Εμφάνιση λίστα αρχείων που βρίσκονται μέσα στο φάκελο.

cd (change directory): Μετάβαση στην τοποθεσία άλλου φακέλου.

rm (remove): Διαγραφή αρχείου.

mv (move): Μετακίνηση αρχείου.

pwd: Εμφάνιση της διαδρομής στην οποία βρισκόμαστε.

 

Μερικά παραδείγματα...

 

Μετά την εντολή "shell" που είδαμε παραπάνω, για να πάμε π.χ. στο φάκελο "/system/app" δίνουμε την εντολή:

 

cd /system/app

 

Για να δούμε τώρα τα αρχεία που βρίσκονται σε αυτό το φάκελο δίνουμε την εντολή:

 

ls

 

Για να αφαιρέσουμε ένα από τα αρχεία του φακέλου (π.χ. το com.android.google) δίνουμε την εντολή:

 

rm -r com.android.google

 

Μπορούμε επίσης να μεταφέρουμε μία εφαρμογή από τη μνήμη χρήστη (data) στην μνήμη συστήματος για να εξοικονομήσουμε χώρο στην εσωτερική μνήμη της συσκευής μας. Για να το πετύχουμε δίνουμε την εντολή:

 

mv /data/app/xxxxx.apk /system/app

 

Τέλος αν έχουμε χαθεί και δεν ξέρουμε σε ποιο φάκελο βρισκόμαστε, μπορούμε να το μάθουμε εύκολα δίνοντας απλά την εντολή:

 

pwd

 

Άλλες εργασίες μέσω ADB

 

Με το ADB μπορούμε να κάνουμε άπειρα πράγματα όπως να μπούμε σε recovery mode, να κάνουμε reboot τη συσκευή μας ή να δοκιμάσουμε μια recovery πριν τη φλασάρουμε για να δούμε αν ταιριάζει στη συσκευή μας. Αυτά επιτυγχάνονται ως εξής:

Για να μπούμε στη recovery:

 

adb reboot recovery

 

Για να μπούμε στον bootloader:

 

adb reboot-bootloader

 

Για να κάνουμε απλό reboot:

 

adb reboot

 

Για να δοκιμάσουμε μια recovery χωρίς να την εγκαταστήσουμε, την τοποθετούμε στον ίδιο φάκελο με το adb, τη μετονομάζουμε σε "recovery.img" για ευκολία και εκτελούμε:

 

adb boot recovery.img

 

Αν θέλουμε και να την εγκαταστήσουμε δίνουμε την εντολή:

 

adb flash recovery recovery.img

 

Το ίδιο μπορούμε να κάνουμε για να εγκαταστήσουμε και άλλα *.img αρχεία στη συσκευή μας απλά θα πρέπει να προσέξουμε μετά το "flash" να δώσουμε το σωστό partition. Για παράδειγμα για να εγκαταστήσουμε ένα νέο boot.img στο boot partition θα δώσουμε την εντολή:

 

adb flash boot boot.img

 

Ενώ για να εγκατστήσουμε το system.img στο system partition δίνουμε:

 

adb flash system system.img

 

Χρησιμοποιήστε το ADB για να εκτελέσετε εργασίες που δεν μπορεί να κάνει το λειτουργικό σύστημα. Πρόκειται για ένα πολύ δυνατό εργαλείο αλλά χρειάζεται υπευθυνότητα και όπως λέει και ο φίλος μας ο Spiderman: “With great power comes great responsibility” για αυτό λοιπόν, προσέχετε για να έχετε.

 

Πηγή:http://www.doctorandroid.gr/2012/03/android-basics-adb.html?m=1

Επεξ/σία από saruman123
  • Like 4
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Βασικά πλέον η google δίνει τα adb & fastboot εκτός του SDK.

http://www.androidpolice.com/2017/01/05/google-makes-adb-fastboot-platform-tools-available-without-full-sdk-android-studio-download/

 

https://developer.android.com/studio/releases/platform-tools.html

 

 

Μπορούμε μέσω adb να βγάλουμε εφαρμογές προεγκατεστημένες;

π.χ g+/youtube/google hangouts

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Βασικά πλέον η google δίνει τα adb & fastboot εκτός του SDK.

http://www.androidpolice.com/2017/01/05/google-makes-adb-fastboot-platform-tools-available-without-full-sdk-android-studio-download/

 

https://developer.android.com/studio/releases/platform-tools.html

 

 

Μπορούμε μέσω adb να βγάλουμε εφαρμογές προεγκατεστημένες;

π.χ g+/youtube/google hangouts

Αυτό είναι για αρχη για όσους δεν το ξέρουν

Για της προεγκατεστημένες Επείδη με έχουν ξαναρώτηση θα σου πω ότι δεν το ξέρω,αλλά μια δοκιμή δεν βλάπτει .

Όσοι το κάνουν όμως ας μας πουν .

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Moderators

Αυτό είναι για αρχη για όσους δεν το ξέρουν

Για της προεγκατεστημένες Επείδη με έχουν ξαναρώτηση θα σου πω ότι δεν το ξέρω,αλλά μια δοκιμή δεν βλάπτει .

Όσοι το κάνουν όμως ας μας πουν .

Βαση λογικης ειναι αποθηκευμενες στο /system στο οποιο δεν εχεις προσβασει χωρις custom recovery/root  οποτε δεν νομιζω να γινεται. Μονο αν παιζει καποιο exploit που να σου δινει προσωρινα root access αλλα δυσκολο

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Βαση λογικης ειναι αποθηκευμενες στο /system στο οποιο δεν εχεις προσβασει χωρις custom recovery/root οποτε δεν νομιζω να γινεται. Μονο αν παιζει καποιο exploit που να σου δινει προσωρινα root access αλλα δυσκολο

Ναι και εγώ αυτό ξέρω ,ότι με το ρουτ είναι το μόνο σίγουρο :D
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Έχω ένα tablet brickαρισμένο... Ελπίζω έτσι να καταφέρω να το ξεκολλήσω, είναι κρίμα να το πετάξω.

Thanx

Αν έχεις ενεργοποίηση τον “Εντοπισμό σφαλμάτων” κάτι θα κάνεις
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Αν έχεις ενεργοποίηση τον “Εντοπισμό σφαλμάτων” κάτι θα κάνεις

Είχε αρχίσει να σέρνεται. Του καθάρισα την Cache και συνέχισε. Μετά του έκανα reset και δε δούλεψε ποτέ.

Τώρα προσπαθώ να περάσω τη ROM ξανά αλλά δε βλέπει τη MicroSD.

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

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Είχε αρχίσει να σέρνεται. Του καθάρισα την Cache και συνέχισε. Μετά του έκανα reset και δε δούλεψε ποτέ.

Τώρα προσπαθώ να περάσω τη ROM ξανά αλλά δε βλέπει τη MicroSD.

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

Αν το αναγνωριζει το pc κανε αυτα

 

Δοκίμασε απο τον H/Y μέσω του ADB να κάνεις επαναφορά. Κατέβασε απο εδώ http://d-h.st/08w μια "ελαφριά" έκδοση του Android SDK.

 

Αφου το αποσυμπιέσεις και μπεις στο φάκελλο (ώστε να βλέπεις τα περιεχόμενα που αποσυμπιέστηκαν) κράτα πατημένο το shift και με δεξί κλικ επέλεξε την εντολή "άνοιγμα παράθυρου εντολών εδώ". (WIN 7)

 

Οι εντολές που δίνεις είναι: adb version

Λογικά θα σου απαντήσει Android Debug Bridge version x.x.xx (οπότε δουλεύει)

adb Devices (θα σου δείξει τις συνδεδεμένες συσκευές, μια στη δικιά σου περίπτωση)

 

Από εκεί δώσε:

adb recovery --wipe_data

ή

adb shell wipe data

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Επειδή το έψαξα εχθές, απ'ότι φαίνεται μπορείς να κάνεις hide/block ότι εφαρμογή θες.

 

Αν θυμάμαι καλά η εντολή είναι:

adb pm hide xxx.apk

 

Υπάρχει απ' όσο είδα και εφαρμογή (βασικά wrapper/GUI) για ευκολία.

https://forum.xda-developers.com/android/software/debloater-remove-carrier-bloat-t2998294

  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...