Android Debug Bridge, Bu makalede yıllardır kullandığım ve çoğu zaman android cihazlar üzerinde aksiyondan aksiyona atladığım adb ile komut satırından neler yapabileceğimizi göreceğiz. Makale adb dünyasından her öğrendiğim yeni komut ile sürekli güncel tutulacaktır.
Android Debug Bridge(ADB) Nedir, Nasıl Kullanılır? – Tüm Komut Listesi
adb dosyası android sdk dizininiz altındaki platform tools dizininde yer almaktadır. Komut satırından adb yazarak hızlıca işlemleri yapabilmek için ortam değişkenlerinde yer alan kullanıcı değişkenlerindeki Path değişkenine sdk üstteki belirttiğimiz adb dosyasının yer aldığı platform tools dizinini ekleyin komut satırı açıksa yeniden açın böylelikle adb yazınca alttaki gibi bir helper çıktısı alacaksınız. Eğer sdk’nızdaki adb eski ise buradan son halini indirebilirsiniz.
Şimdi biraz heyecanlandırma zamanı. Cihaza ne gibi eziyetler çektireceğiz ve hangi komutlar ile nasıl eğleneceğiz hep beraber adım adım gidelim komutlar üzerinden.
Basit Komutlar
install
Bu komut ile cihaza uygulama yükleme işlemini gerçekleştirebiliyoruz.
Parametreler
- -r: Uygulama eğer cihazınızda yüklü ise varolan uygulama ile değiştirilmesini sağlar ve mevcut datayı korur.
- -s: Uygulamanın hafıza kartına yüklenmesi sağlanır.
uninstall
Bu komut ile cihazdan uygulama kaldırma işlemini gerçekleştirebiliyoruz. Uygulamayı kaldırma için adb uninstall komutundan sonra kaldırmak istediğiniz uygulamaya ait olan ve her uygulamaya ait benzersiz bir kimlik kodu olan ve genellikle com. ile başlayan kimlik kodunu girin. Örnek olarak playstore’a web tarayıcından girip twitter uygulaması detayına girdiğinizde alttaki gibi com.twitter.android kimlik koduna sahip olduğunu görüyoruz.
Parametreler
- -k: Uygulama kullanımı ile oluşturulmuş dosyaların silinmemesini sağlar, bu seçeneği uygulamayı daha sonra yüklemeyi düşünüyorsanız ve çeşitli ayarlarınızın saklı kalmasını isterseniz kullanabilirsiniz.
devices [-l]
Bu komut adından da anlaşılacağı üzere cihazların listesini vermektedir. Şimdi devices komutunu çalıştırdığımızda nasıl bir çıktı elde ediyoruz görelim.
devices komutu ile usb ile bağlamış olduğum gerçek cihaz görülmektedir. Eğer cihaz hakkında daha detaylı bilgi almak isterseniz -l
parametresini ekleyin üstteki komuta bu parametreyi ekleyince nasıl çıktı alıyoruz bakalım.
exec-out
Ekran görüntüsünü hızlıca alma konusunda ihtiyacınız olursa üstteki kodu kullanmanızı tavsiye ederim çünkü adb shell screencap ve sonrasında adb pull ile dosyayı çekme ile minimum 2sn sürecek ama bu yöntem ile max 100ms’de bilgisayara direkt kayıt işlemi gerçekleştiriliyor.
push
Klasör içerisindeki tüm dosyaları aktarmak için alttaki gibi bir tanım kullanabilirsiniz.
reverse
Bu komut genellikle react-native ile cross platform mobil geliştirme yapmak için kullandığımız bir komuttur. Bu reverse komutu ile mobil cihaz ile geliştirme ortamının arasındaki port eşleştirmesini yapabiliriz.
pull
sdcard altında yer alan music klasörü altındaki myMusicFile.mp4 dosyasını komut satırını hangi dizinde açtıysanız oraya indirme işlemini yapar.
reboot
Cihazı yeniden başlatmanızı sağlar.
reboot-bootloader
Cihazı bootloader modunda açılması için cihazı yeniden başlatır. Bootloader ise özelleştirilmiş android işletim sistemlerini yada resmi işletim sistemlerini kurmak için kullanabileceğiniz ortamdı.
Shell Komutları
Shell komutları ile çok gelişmiş işlemler yapılabilmektedir üstteki basit komutlar yerine bir sürü parametre ve alt komutlara dalacağınız serüvene inşallah hazırsınızdır yoksa son durumumuz bu şekilde olabilir 🙂
Shell komutlarını yazabilmek için adb shell
yazıp enter’a basın yada shell komut ve parametreleri ile birlikte adb shell komut -parameter
şeklinde direkt çalıştırabilirsiniz. Ama bazı komutlar direkt adb shell komut… kullanımında çalışmayabiliyor o yüzden adb shell komutu ile shell’e geçiş yapıp shell komutlarını bu şekilde yapmanız daha doğru olacaktır alttaki shell komutları öncesinde muhakkak adb shell deyip shell’e geçin yapınız sonrasında sizlerle paylaştığım shell kodlarını çalıştırın.
screencap
EKran görüntüsünü almak için kullanabileceğiniz komuttur.
Üstteki screencap komutu alternatif olarak alttaki gibi kullanılabilmektedir.
rm
Dosya silmek için kullanabileceğiniz komuttur. Üstte oluşturduğumuz ekran görüntüsünü silmek için alttaki komutu kullanalım.
Ekranda o an aktif uygulamaların listesini almak
Üstteki komutu tek satırda çalıştırmak için
adb shell dumpsys window windows | findstr Focus
komutunu kullanınız tek satır kullanımdagrep
tanınmıyorshell
içerisindedefindstr
tanınmıyor iki yazılımcı arasında bir inatlaşma durumu sözkonusu gibi ben seni tanınam diğeride bende seni tanımam deyince böyle bir durum ortaya çıkmış sanırım 🙂 şaka maka bir yana bu duruma dikkat ediniz.
netcfg
Mobil cihazınızın tüm ağlarına atanmış ip adresi, mac adresi ve bağlantı durumu ile ilgili bilgi alabilirsiniz. Örnek komut ise altta yer almaktadır.
Bu komut sonrası alttaki gibi onlarca satırın yer aldığı her bir ağ durumuna ilişkin bilgi dönecektir.
ipconfig
netcfg komutuna alternatif olarak kullanabileceğiniz bir komuttur fakat farkı bu komut ile sadece belirli bir ağın durumunu sorgulamak için kullanabilirsiniz. Örnek olarak wlan0 ile wifi ağ bilgisini alabilirsiniz. Örnek kod ve çıktısı altta yer almaktadır.
Sonuç olarak üsttekine benzer bir çıktı verecek.
Global Parametreler
-s
Eğer bilgisayarınıza birden fazla cihaz(emulator, gerçek) bağlı ise komutun hangi cihazdan uygulanacağını belirtmek için -s parametresini kullanıp cihaz adını girmelisiniz cihaz adına devices komutunu çalıştırarak erişebilirsiniz. Örnek verecek olursak KAJ01EQ63L adlı cihazıma dosya göndermek istiyorum o zaman push kısmındaki kodu şu şekilde revize edebilirim.
📚 Diğer Android Makaleleri
- ANDROID Kıvrımlı ve Kenarlıklı Layoutlar Oluşturma
- ANDROID Başlık Çubuğu ve Bildirim Çubuğunu Gizleme
- ANDROID İle Giriş Ekranı Tasarımı
📚 Kaynaklar
✍ Android Debug Bridge konulu makalemiz için lütfen olumlu-olumsuz tüm görüşlerinizi bana yorum yada mail yolu ile iletmeyi ihmal etmeyin.
🔗 Android Debug Bridge makalemizi sosyal medya kanallarından paylaşarak destek olursanız çok sevinirim.
👋 Bir sonraki makalede görüşmek dileğiyle.
Merhabalar kolay gelsin ksr bakmayin rahatsiz ediyorum ben yanlışlıkla boş dosya zannedip bi klasor sildim
Sildikten sonra usb belleği telefonum görmüyor
Bilgisayarda bağlamadigim için hiç bi şekilde driver vb bulup yükleyemiyorum.hard formata rağmen yine düzelmedi
Otg programı kurdum flash bellek takıldı çıkarıldı diye görüyor ama flashi görüp açmıyor
Telefon numaram
**** *** ** **
Driver vb link atmak isteyen olursa normal eski usul sms modu ile atarsa yada ararsa yardım için çok sevinirim teşekkürler simdiden
Merhaba,
Donanımsal olarak yaşadığınız bir sorun olduğunu düşündüğümden yanlış bilgi vermemek adına yardımcı olamayacağımı söylemek zorundayım ama eğer makaleyi ziyaret eden arkadaşlar içerisinden aynı olay ile ilgili bir tecrübesi olan olursa yardımcı olmasını rica ediyoruz
Dosya transferi yapabileceğim, uzaktan depolama alanı olarak kullanabileceğim , php ve mysql kullanabileceğim bir server kurmak. Shell komutlarıyla mümkün mü acaba?
Yazınız çok yararlı oldu benim için, teşekkür ederim. Ben bişey sormak istiyorum size. Benim eski telefonumun ekranı yandı ama telefon çalışıyor. Bu adb kodları ile eski telefonumu hobi amaçlı servera çevirebilir miyim? Yoksa hiç girişmiyim mi? 🙂
Rica ederim işinize yaramış olmasına çok sevindim. Server’dan kastınız tam olarak nedir ne gibi faydalanmak istiyorsunuz?
Teşkkürler. Heryerde bukadar net ve detaylı anlatım bulmak kolay değil.
Teşekkür ederim, beğenmiş olmanız ve ihtiyaç karşılamış olması mutluluk verici.
Gayet başarılı