SORU
3 AĞUSTOS 2011, ÇARŞAMBA


Hata ayıklama cihaz üzerinde veritabanı sqlite

Şu anda Android için WiFi bir uygulama üzerinde çalışıyorum. Sorun cihazda veritabanına erişmek için çalışarak geçiriyorum. Öykünücüsü hata ayıklama öykünücüsü WiFi desteği yok çünkü benim için işe yaramaz. Veritabanı aygıtı kullanarak dosya çekmeye çalıştım

adb pull data/data/package-name/databases/database-name

Ama hata alıyorum "İzin verilmedi.". Bu cevap Android: Where are database files stored?, Commonsware hata ayıklama modunda çalıştırarak veritabanı dosya çekmeyi önerdi. Ama çok da işe yaramıyor. Cihaz köklenme olmadan veritabanı hata ayıklama için nasıl herhangi bir yardım çok mutluluk duyacağız.

CEVAP
8 Aralık 2011, PERŞEMBE


another answer tekrar ediyorum:

Başlatılmasını API seviyesi 8 (Android 2.2), yapı uygulama olarak debuggable kullanabilirsiniz kabuğu run-as komut çalıştırmak için bir komut ya da çalıştırılabilir olarak belirli bir kullanıcı/uygulama veya sadece geçiş yapmak için UID Uygulama böylece erişim verilerini dizin.

Çok istiyorsanız çekin uygulamanız veritabanından cihazı çalıştıracağını uygulama hata ayıklama modu (bunu yapmak için, sadece çalıştırın ondan Tutulması), connect adb -d shell ve aşağıdaki komutları çalıştırın:

run-as package-name
cat /data/data/package-name/databases/database-name >/sdcard/database-name

Bu SD kart kök yourdatabase.db kopyalar. Şimdi kolayca oradan (USB depolama kullanarak, alırsınadb çekinya da her ne olursa olsun senin gibi).

GÜNCELLEME@Shiki uygun bir one-liner sağlanan bir adb kabuk girmeden kullanabilirsiniz:

adb -d shell 'run-as com.yourpackage cat /data/data/com.yourpackage/databases/dbname.sqlite > /sdcard/dbname.sqlite'

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BlackBoxTV

    BlackBoxTV

    7 Mayıs 2007
  • GWTLecturer

    GWTLecturer

    18 EKİM 2012
  • FusioNGamiing

    FusioNGamiin

    10 Temmuz 2007