ADB Shell'e Giriş: Hızlı Başlangıç ve Gerçek Kullanım Senaryoları
ADB Shell, ADB aracılığıyla Android'in komut satırına erişim sağlar. Giriş yapmak için: "USB Hata Ayıklama"yı etkinleştirin, cihazı (USB veya Wi-Fi üzerinden) bağlayın ve adb shell komutunu çalıştırın — ardından root erişimi olmadan günlükleri görüntüleyebilir, dosya ve işlemleri yönetebilir, ekran görüntüsü alabilir ve sistemi tanılayabilirsiniz.
Kurulum ve Bağlantı
- Android SDK Platform Tools'u (platform-tools) kurun ve klasörü PATH ortam değişkenine ekleyin.
- Kontrol: adb version
- Cihazda "Geliştirici Seçenekleri" → "USB Hata Ayıklama"yı (ve gerekirse "Wi-Fi Üzerinden Hata Ayıklama"yı) etkinleştirin.
- USB ile bağlantı:
- adb devices — cihaz listesini görüntüleyin ve telefon ekranında hata ayıklamaya izin verin.
- adb shell — kabuğu açın.
- Wi-Fi ile bağlantı:
- adb connect <CİHAZ_IP>:5555
- adb devices
- Cihaz görünmüyorsa:
- adb kill-server && adb start-server
- Windows'ta ilgili sürücüleri (cihaz üreticisine göre) yükleyin.
Telefon ekranında her zaman ADB bağlantısına izin verin — onay verilmezse cihaz "yetkisiz" (unauthorized) durumunda kalır.
ADB yalnızca hata ayıklama etkinleştirildiğinde çalışır. Tanımadığınız bilgisayarlara erişim izni vermeyin: ADB, cihaz üzerinde geniş kontrol sağlar.
Faydalı Komutlar ve Senaryolar
Aşağıda, gerçekten işinize yarayacak kompakt bir komut seti yer almaktadır.
- Sistem bilgileri:
- getprop ro.build.version.release — Android sürümü
- getprop ro.product.model — cihaz modeli
- Dosyalar:
- ls /sdcard/ — listele
- cat /sdcard/file.txt — oku
- cp /sdcard/a /sdcard/b — kopyala
- rm /sdcard/file — sil
- adb pull /sdcard/screenshot.png . — PC'ye indir
- adb push local.file /sdcard/ — PC'den yükle
- İşlemler ve kaynaklar:
- ps | grep
— işlem arama - top — CPU yükü (Ctrl+C ile çıkış)
- dumpsys meminfo
— uygulama belleği - dumpsys cpuinfo — CPU dağılımı
- ps | grep
- Günlükler ve tanılama:
- logcat — canlı günlükler
- logcat -d > logs.txt — dosyaya kaydet
- dumpsys battery — pil durumu
- df -h /sdcard/ — boş alan
- Uygulama yönetimi:
- pm list packages — paket listesi
- pm uninstall
— kaldır (sistem uygulamaları yalnızca root ile) - am start -n
/ — uygulamayı başlat - pm clear
— uygulama verilerini temizle
- Ekran görüntüsü ve kayıt:
- screencap /sdcard/screen.png
- screenrecord /sdcard/record.mp4
- Giriş simülasyonu:
- input tap X Y — dokunma simülasyonu
- input text "hello" — metin girişi
Gerçek kullanım senaryoları örnekleri:
- Donma tanılama: logcat -v time > crash.log, ardından hata yığınını analiz edin.
- Oyunda FPS testi: dumpsys gfxinfo
. - Uygulama önbelleğini hızlı temizleme: pm clear
.
adb shell komutu, istemci ön ekinin (# — root, $ — kullanıcı) erişim seviyesini gösterdiği bir ortam açar.
Sınırlamalar ve Güvenlik
- Varsayılan olarak ADB Shell kullanıcı modunda çalışır: /system erişimi kısıtlıdır.
- ADB üzerinden root hakları elde etmek için kilidi açılmış bir önyükleyici ve root yöneticisi (örneğin Magisk) veya emülatör gerekir: adb root (tüm cihazlarda çalışmaz).
- pm uninstall ve rm komutlarını kullanırken dikkatli olun — hatalar sisteme zarar verebilir.
- Tanımadığınız bilgisayarlara erişim izni vermeyin: Yetkisiz erişim şüphesi varsa, geliştirici ayarlarından yetkilendirmeyi iptal edin.
Sık Karşılaşılan Hatalar
- device unauthorized — cihaz ekranını açın ve isteği onaylayın.
- no permissions / insufficient permissions — sürücüleri (Windows) veya erişim haklarını kontrol edin.
- failed to connect to
:5555 — Wi-Fi üzerinden hata ayıklamayı etkinleştirin ve cihaz ile PC'nin aynı ağda olduğundan emin olun. - adb: not found — platform-tools PATH içinde değil veya kurulmamış.
SSS
- ADB Shell'den nasıl çıkılır? — exit komutu veya Ctrl+D.
- Wi-Fi üzerinden nasıl bağlanılır? — USB ile bağlanın, adb tcpip 5555 komutunu çalıştırın, ardından adb connect
:5555 komutunu uygulayın. - Her şey root olmadan yapılabilir mi? — Çoğu tanılama görevi root olmadan yapılabilir; sistem dosyalarıyla ilgili işlemler için root gerekir.
- Ekran görüntüsünü PC'ye nasıl kaydedebilirim? — ADB'de: screencap /sdcard/s.png && adb pull /sdcard/s.png .
Temel komutlarla başlayın (adb devices, adb shell, logcat, pm list packages) — bu komutlar Android tanılama ve yönetimine ilişkin günlük görevlerin %80–90'ını çözer.