Room Persistence Kitaplığı ile oluşturulan veritabanının içeriğini görüntüleyin


98

Android Studio'da Room Persistence Kitaplığı ile oluşturulan veritabanının içeriğini görmenin daha kolay bir yolu var mı?


6
easier wayhangi yöne kıyasla?
Vladyslav Matviienko

1
DDMS kullanmak veya adb kabuğu gibi eski yaklaşımlarla karşılaştırıldığında. DDMS bilgisayarımı donduruyor ve adb kullanmak çok iş gerektiriyor. Son zamanlarda Google tarafından piyasaya sürüldüğü için daha kolay bir yol olmalı diye düşünüyorum
SpiralDev

12
Android stüdyosunda değil, ancak bu github.com/facebook/stetho , uygulama veritabanınızı, hatta paylaşılan tercihleri ​​vb. Görebileceğiniz, facebook tarafından geliştirilen en iyi Android Hata Ayıklama köprüsüdür
Moinkhan

Yanıtlar:


47

Yöntem 1

Android-Debug-Database'i kullanabilir ve verilerinizi bir tarayıcıdan CRUD yapabilir ve ardından Tercih verilerinizi bir tarayıcıdan görebilirsiniz.

Yöntem 2

Tarayıcıdan kullanmak istemiyorsanız ve diğer dosyaları kontrol etmeniz gerekiyorsa, veri değişikliklerinizi kontrol etmeniz, bir Genymotion Emülatörü kullanmanız gerekiyorsa, öykünücünüzü köklendirmeniz gerekir. Öykünücünüzü Köklendirmeyi deneyin, lütfen https: / /stackoverflow.com/a/44039429/2772552 . İyi değilseniz bana bildirin.


Veritabanı dosyasını görebiliyor, ancak oluşturulan tabloları veritabanında görüntüleyemiyor. Her iki yöntemi de denedim
Ravikiran

9
Sonunda çözümü bir günlük çalışmadan sonra buldum. Emülatörden "userdatabase", "userdatabase-shm" ve "userdatabase-wal" dosyalarını dışa aktar ve sqlite görüntüleyicide "userdatabase" dosyasını aç
Ravikiran

.db dahili dizindeyse, orada görmenize izin verilmez, .db dosyasını manuel olarak harici depolama dizinine kopyalayın ve u
Htoo Aung Hlaing

Yöntem 1'de diğer eşzamansız görevlerde okuma / yazma sorunlarına neden olan bir sorun yaşadım. Uygulamanın donmasına neden oldu.
Jeffrey

90

Eski Android Studio sürümlerinde:

Emulator -> Android Studio -> Device File Explorer -> /data/data/{$packageId}/databases/ -> Save As -> https://sqlitebrowser.org/

Daha sonraki Android Studio sürümlerinde (3.5+):

View -> Tool Windows -> Device File Explorer -> /data/data/{$packageId}/databases/ -> Save As -> https://sqlitebrowser.org/

1
işleme izin verilmiyor
Jonathan

2
@jonney Bu yöntem yalnızca köklü aygıt veya emülatörde çalışacaktır.
Hitesh Bisht

1
Bu aynı zamanda, Samsung cihazları dışında hata
ayıklama

1
Kabul edilen cevap bu olmalıdır - yazılımı indirmek veya cihazı köklendirmek zorunda kalmadan DB'yi almanın en kolay yolu.
beyondtheteal

1
@ JakubJabłoński, Android Studio'da Device File Explorer'ı açmak yerine uygulamanızı emülatörde başlatın
kreker

66

android stüdyo 3.1. *

araç penceresi çubuğunda " Device File explorer" öğesini tıklayın genellikle bunu ekranın sağ alt köşesinde bulabilirsiniz

dizini aç data/data/your-application-package/databases

yeni mimari ile veritabanları dizininde 3 dosya oluşturulur

your-database-name
your-database-name-shm
your-database-name-wal

3'ünü de aynı dizine aktarmanız gerekir

daha sonra herhangi bir sqlite tarayıcısında ilk bir dosyayı açın (sadece veritabanı-adınız ile).

ve şimdi tüm verilerinizi görebilirsiniz .......

your-database-name-shm
your-database-name-wal

Yalnızca veritabanı dosyasını açacaksanız, db dosyasını açmak için bu iki ekstra dosyaya ihtiyaç vardır, bu dosyada herhangi bir tablo bulamayacaksınız


Dosya sistemimde "/ data / data / ..." yolunun nerede olduğunu nasıl öğrenebilirim?
Awais Hüseyin

Bu cevabın yazarı, aslında yeni başlayanlar için biraz zaman kazandıran `Aygıt Dosya Gezgini'nin nerede yaşadığını gösterir; dolayısıyla +1
Ilonpilaaja

@AwaisHussain: usecontext.getDatabasePath("your-db-name.db")
gMale

Her yerde aramak için iki kez vardiya tuşuna basın ve android stüdyonuzun sağ alt köşesinden kaldırılmışsa Aygıt Dosya Gezgini'ni yazın.
COYG

Bana cevap verdiğiniz için teşekkür ederim
Amirhf

39

SQLite için DB Tarayıcısını İndirin ve Yükleyin

Android Studio sürümlerinde> = 3.0:

Cihaz Dosya Gezgini'ni şu yolla açın:

Görünüm > Araç Pencereleri > Aygıt Dosya Gezgini

"Aygıt Dosyası Gezgini" nde şuraya gidin:

veri > veri > PACKAGE_NAME > veritabanları

PACKAGE_NAME, paketinizin adıdır (aşağıdaki örnekte com.edgedevstudio.sample'dir)

Aygıt Dosya Gezgini

Veritabanına sağ tıklayın ve Farklı Kaydet'i seçin. Bilgisayarınızda istediğiniz yere kaydedin.

SQLite için DB Tarayıcısını açın ve 'Veritabanını aç'ı tıklayın ve veritabanını açın. görüntü açıklamasını buraya girin

Yukarıdaki örnekte, " todolist " DEĞİL "todolist-shm" veya "todolist-wal" ifadesini bulmalısınız.

3 veritabanı dosyasını (db_name, db_name-shm & db_name-wal, burada db_name = veritabanının adı) dışa aktarmazsanız, veritabanını okuyamazsınız.


İşte aradığım buydu .. Tam olarak ne gerekli! Teşekkürler @EdgeDev
Kannan_SJD

19

Kişisel olarak Android Hata Ayıklama Veritabanını kullanıyorum

Android Hata Ayıklama Veritabanı, Android uygulamalarında veritabanları ve paylaşılan tercihlerde hata ayıklamak için güçlü bir kitaplıktır.

Hızlı başlangıç

Bunu uygulamanızın build.gradle'a ekleyin

debugImplementation 'com.amitshekhar.android:debug-db:1.0.4'

Sadece uygulamayı başlatın, logcat'de aşağıdaki gibi bir giriş göreceksiniz:

D/DebugDB: Open http://192.168.1.104:8080 in your browser

görüntü açıklamasını buraya girin


görüntü açıklamasını buraya girin


Daha fazla bilgi için github bir göz repo


1
Cihazı
köklendirmeye

1
Vaov! Harika şeyler !! Tesekkurler dostum!!
Barakuda

10

15 Nisan 2020 - Kolay bir yol için şu adımları izleyin:

  1. SQLiteBrowser programını indirin : Tüm işletim sistemleri için SQLite'ı indirin
  2. Android Studio'da Sağ Alt köşede "Cihaz İstismarı" nı tıklayın.
  3. Çok fazla dosya göreceksiniz. Endişelenme! Yolu izleyin: veriler / veriler / {uygulamanızın paket adı}
  4. Bilgisayarınızda "veritabanları" na sağ tıklayın ve Farklı Kaydet.
  5. SQLiteBrowser'ı açın ve veritabanı adınızla aynı adı taşıyan dosyayı seçmek yerine "Veritabanını Aç" ı tıklayın.
  6. Dosyaları görebilir ve veritabanı tablo adınızla aynı ada sahip olanı seçebilirsiniz.
  7. Son adımda Veritabanı Yapısının yanında "Verilere Gözat" seçeneğini görebilir, seçtiğinizde veritabanı verilerinizi görebilirsiniz.

Aşağıdaki resimde adımları görebilir ve sadece sayıları takip edebilirsiniz

Resimde adımları görebilirsiniz.

@canerkaseler


7

Stetho'yu kullanın .

Android projenize bir dependency.

Çağrı Stetho.initializeWithDefaults(this)Sepetinde Applicationve aleti kontrol krom kullanarak veritabanı görüntülemek. Senin krom URL çubuğunda aşağıdakileri girin: chrome://inspect.

Presto! Görebilirsiniz Room database.


3

Bunu aşağıdaki adımları izleyerek yaptım:

1) Aşağıdaki bağlantıdan db tarayıcısını indirin.

https://sqlitebrowser.org/

2) IDE'den Aygıt Dosya Gezgini'ne gidin ve oluşturulan üç dosyayı kopyalayın ve buraya resim açıklamasını girin ve üç dosyayı da seçin: db'niz, db-shm'niz, db-wal'ınız

ctrl + shift + s tuşlarına basın ve bir klasöre yapıştırın. Bitti.

3) son olarak db'nizi DbBrowser Uygulaması ile açın.


teşekkürler, üç dosyayı da seçmelisin: * -db, * -db-shm, * -db-wal
xyz

2

Android Studio 4.1 Canary'nin en son sürümü ile Android Studio , Database Inspector adlı yeni bir araç sağlıyor .

Veritabanı dosyasını ve içeriğini görüntülemek için bu Veritabanı Denetçisi aracını kullanabilirsiniz, ayrıca veritabanı içeriğini de düzenleyebilirsiniz.

görüntü açıklamasını buraya girin

Eğer kullanıyorsanız, Room Persistenceo zaman aynı zamanda @QueryAndroid Studio'da çalıştırma olanağı sağlar . @QueryEk açıklamanın sol tarafındaki çalıştır düğmesini görebilirsiniz .

görüntü açıklamasını buraya girin

Eğer kullanıyorsanız, LiveDatao zaman veritabanı içeriği değişikliklerini yansıtacaktır.

görüntü açıklamasını buraya girin


1
You can see your database table on the DB Browser for SQLite & room DB.

 In android studio 
1. Click on View -> Tool Windows -> Device File Explorer -> data
2. Select your project package name -> database -> select all file and save on desktop

Install **DB browser for SQLITE** 
1. sudo apt-get install sqlitebrowser //write on your terminal for install DB browser
2. install DB browser for sqlite
3. click on Open database and select file where you had saved your data
4. click on Brower Data and see your tables

This is all where i have see my android room database


0

Yakın zamanda Sethto By Facebook'u denedim .

Stetho, Android uygulamaları için gelişmiş bir hata ayıklama köprüsüdür. Etkinleştirildiğinde, geliştiriciler, Chrome masaüstü tarayıcısının yerel bir parçası olan Chrome Geliştirici Araçları özelliğine erişebilir.

Sadece kademeli bağımlılığını dahil etmeniz ve MainApp'a çağırmanız gerekir. Bu kadar. chrome://inspect/Sqlite veritabanınızı dahil ederek chrome penceresindeki tüm araçlara erişebilirsiniz .

Aşağıda, Emulator'daki Room Database tarafından incelenen bir ekran görüntüsü verilmiştir . Şimdiye kadar sadece emülatörde denedim.

görüntü açıklamasını buraya girin


0

DB'nizi (3 dosya) yukarıda belirtildiği gibi Device File Explorar'dan aldıktan sonra

"SQLite için DB Browser" https://sqlitebrowser.org/ gibi kolay bir programı gerçekten tavsiye ederim

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.