Bir Android aygıtında ADB'yi kullanmayı denedim, dolayısıyla hiçbir ana bilgisayar olmadan. Bu birkaç gün önce mükemmel bir şekilde çalışıyordu, ama aniden çalışmayı bıraktı. Bildiğim kadarıyla o zamandan beri hiçbir şey değişmedi (ör., Hiçbir uygulama (un) yüklü değil). Bir terminal öykünücüsünde adb backup -f /sdcard/backup.ab <package-name>
kullanabilir ve bu paketi yedeklemeye başlayacaktır. Bunu şimdi denediğimde, adb: unable to connect for backup
döndürür. adb devices
kullanarak soruşturma boş bir liste döndürür. Daha önce cihazları kontrol etmekten asla rahatsız olmadım, sadece düpedüz komutuma gittim, çünkü her şey çalışıyordu.ADB'yi yerel olarak cihazda (geridönüş) kullanarak hiçbir aygıt göstermiyor
Bu, Android 4.4.2, ADB sürüm 1.0.31 çalıştıran bir HTC Desire sürümündeydi. Bu telefon ile PC'mden ADB'yi kullanmak mükemmel çalışıyor, ama istediğim bu değil. Ben, Sony Xperia S 4.4.2 üzerinde 4.4.2 üzerinde, Samsung Galaxy Note GT-N7000 farklı cihazlara (Asus PadFone 2 aynı eylemleri gerçekleştirmek için çalıştık
- denedim ne
4.1.2.) ancak
adb devices
, hepsinde boş bir liste döndürür. Bunun neden HTC Desire'ım üzerinde çalıştığını merak etmeye başlıyorum. - Google ve Yığın Taşması'nda arama yapın, ancak çoğu (tümü olmasa da) sonuç, bir sürücü sorununa veya ana bilgisayarı içeren başka bir soruna bakın.
adb kill-server
+ yüzlerce kez yanı sıra,stop adbd
+start adbd
.- Ayarlar'da “USB Hata Ayıklama” işleminin kapatılması ve açılması, ayrıca önceden yetki verilen bilgisayarlara erişimin iptal edilmesi. (Ancak, çalışma durumunda, hiç bir RSA anahtar doğrulama isteminde bulunmadım.)
adb -a devices
-> boş liste.- TCP modunda adb (d) 'yi yeniden başlatmaya çalışmak başarısızdır (bu, çalışma durumunda gerekli olmasa bile).
adb tcpip 5555
,error: device not found
'u döndürür. getprop
,service.adb.tcp.port
vesetprop service.adb.tcp.port 5555
adlı hiçbir giriş sessizce başarısız olur. (getprop service.adb.tcp.port
'u kullanarak sonradan döndürme. Bu köke gerek yok mu?)adb connect localhost
,unable to connect to localhost:5555
değerini döndürür.- Arka plan başladığında, 5038 numaralı bağlantı noktasında başlar (PC'mden ADB kullanırken 5037'den başlar).
adb connect localhost:5038
,connected to localhost:5038
'u döndürür. Ancakadb devices
hala boş bir liste döndürür veadb backup
,adb: unable to connect for backup
döndürür. Ayrıcaadb shell
,error: device not found
veadb get-state
,unknown
'u döndürür. Yani burada da başarı yok. - Yerel ipimi
getprop dhcp.wlan0.ipaddress
(192.168.1.xx döndürür) kullanarak bulma veadb connect 192.168.1.xx
,unable to connect to :5555
'u döndürür.adb connect 192.168.1.xx:5038
->unable to connect to :5038
.ADBHOST=192.168.1.xx adb start-server
'u kullanarak bu sonuçlar üzerinde hiçbir etkisi yoktur. - Aslında bir şekilde alakalı olan birkaç arama sonucundan biri, AOSP Sorun İzleyicisi'nde this iş parçacığıdır. Yine de,
setprop service.adb.tcp.port 5555
,adb devices
kullanımından sonra en azından bir cihazı (ancaklocalhost:5555 offline
) çevrimdışı olarak görüntüleyen bir sorunu açıklar.İpin sonuna yakın bir şekilde, $ HOME dizininin RSA tuşlarının kaydedildiği yeri değiştirecek şekilde değiştirilmesini içeren bir çözüme ulaşılır, örn.HOME=/sdcard
. Daha sonracat /sdcard/.android/adbkey.pub >> /data/misc/adb/adb_keys
kullanarak/key/misc/adb/adb_keys için public anahtar eklemek gerekir. Bununla birlikte, bu ihtiyacın kökü var mı? Ayrıca, tüm bu çalışma koşullarında gerekli değildi, bu yüzden benim sorunumun çözümünün bu yönde bulunmasından şüphe duyuyorum. AOSP'un Yayın İzleyicisi'ndeki iş parçacığından türetilen This article, ortak anahtarın eklenmesinden söz etmez. Bununla birlikte, bahsedilen yaklaşım başarısızdır. (Diğerleri arasında) netstat
döner:Proto: tcp
Recv-Q: 0
Send-Q: 0
Local Address: 127.0.0.1:5038
Foreign Address: 0.0.0.0:*
State: LISTEN
ps
bir/sbin/adbd
sürecini göstermektedir yanı sıraadb
süreci:- USER: shell PID: 92 PPID: 1 VSIZE: 3624 RSS: 264 WCHAN: ffffffff PC: 00000000 S NAME: /sbin/adbd
- USER: u0_a57 PID: 9754 PPID: 1 VSIZE: 3016 RSS: 988 WCHAN: ffffffff PC: 4014f768 S NAME: adb
- (Commands executed from the terminal are executed as USER: u0_a57.)
adb usb
->error: device not found
. Bunun hemen hemen tahmin o.
Daha önce çalıştığım zaman gerekmediği için kök gerekmeyen bir çözüm arıyorum. Umarım benim durumum ve soru açık. Sorununun iyileştirilmesi gerekiyorsa lütfen bana bildirin. Bu, Stack Overflow'ta ilk kez gönderiyorum. Umarım birileri bana yardımcı olabilir. Şimdiden teşekkürler!
Tam olarak ne elde etmeye çalışıyorsunuz? PC olmadan bir yedekleme dosyası oluşturmak için sadece '/ system/bin/bu backup' komutunu çalıştırın. PC'den başlatıldığında 'adb backup' budur. –
@AlexP. Cevabın için teşekkürler. PC olmadan yedek oluşturmaya çalıştığımdan, ihtiyacım olan şey bu olabilir. Yedeklemenin kaydedileceği yeri nasıl kurabilirim? Com.android.commands.bu.Backup kaynak kodundan, -f parametresi yoktur. Ayrıca, kaynağı doğru şekilde okuyorsam, ilk argümanı ('yedekleme' öncesinde bile) daha sonra (int olarak) bir ParcelFileDescriptor – JooPalmer
@AlexP oluşturmak için kullanılır. Yine de, '/ system/bin/bu /sdcard/backup.ab backup -all' sdcard'ın bir backup.ab dosyası oluşturmuyor. Bu dönecek tek şey 'linker: app_process text relocations.', Xposed nedeniyle olduğu gibi görünen bir uyarı. Okuduğumdan, bu sadece bir uyarıdır ve işlem (bu yedekleme) hala yürütülmelidir. Sadece idam edildiğine dair bir kanıt bulamıyorum. – JooPalmer