Android müzik çalma listelerini nerede (ve nasıl) saklar?


32

Android'in aynı müzik çalma listelerini müzik uygulamaları arasında tuttuğunu fark ettim. Bu çalma listeleri nerede saklanıyor? Nasıl (hangi formatta) saklanırlar? USB depolama bağlantısı aracılığıyla onlara uzaktan erişebilir miyim, yoksa bunlara erişmek için kullanabileceğim bir uygulama var mı?

İlgili soru: Müzik transferi ve çalma listeleri


Yanıtlar:


24

music.dbDosyanızda depolanmışlar - benimki /data/data/com.google.android.music/databases; Bunun tüm cihazlarda aynı olup olmadığından emin değilim ama sanırım öyle.

Bunlar olarak tanımlanan LISTSve LISTITEMStablolarının bir birleşiminde yaşıyorlar :

sqlite> .schema lists
.schema lists
CREATE TABLE LISTS(Id INTEGER PRIMARY KEY AUTOINCREMENT, Name TEXT NOT NULL, 
    SourceAccount INTEGER, SourceId TEXT, _sync_version TEXT, 
    _sync_dirty INTEGER NOT NULL DEFAULT 0, MediaStoreId INTEGER, 
    ListType INTEGER NOT NULL DEFAULT 0, ListArtworkLocation TEXT);
CREATE INDEX LIST_SYNC_INDEX on LISTS(SourceAccount,SourceId);
sqlite>

sqlite> .schema listitems
.schema listitems
CREATE TABLE LISTITEMS(Id INTEGER PRIMARY KEY AUTOINCREMENT, 
    ListId INTEGER NOT NULL REFERENCES LISTS, MusicSourceAccount INTEGER NOT NULL,  
    MusicSourceId TEXT NOT NULL, ClientPosition INTEGER NOT NULL, 
    ServerPosition INTEGER NOT NULL DEFAULT 0, SourceAccount INTEGER, SourceId TEXT,
    _sync_version TEXT, _sync_dirty INTEGER NOT NULL DEFAULT 0, 
    ServerOrder TEXT DEFAULT '', ClientId TEXT);
CREATE INDEX LISTITEMS_ORDER_INDEX ON LISTITEMS (ListId, ServerOrder, ClientPosition);
CREATE INDEX LISTITEMS_SYNC_INDEX on LISTITEMS(SourceAccount,SourceId);
sqlite>

İlginç bir şekilde, yeni Google Müzik Beta kullanıyorsanız, oluşturduğunuz çalma listeleri diğer uygulamalarda görünmüyor, ancak bunların DB girişleri var. Bu muhtemelen MusicSourceAccountalanın Google Müzik hesap kimliğinize ayarlanmış olması nedeniyle görünüyor ; diğer uygulamalar onu 0 olarak ayarlar ve bunlar DB'den veri alan tüm uygulamalarda görünür.


1

XDA Developers'dan bir yazı buldum .

Bunu okuyan kimse yukarıda listelenen dizinde bulamazsa, bunun yerine şunu deneyin:

/data/data/com.android.providers.media/databases/external-{{some hex here}}.db

Daha sonra bilgisayarınıza kopyalayabilir, zevkinizin SQLite düzenleyicisini kullanabilir ve verileri istediğiniz gibi değiştirebilirsiniz.

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.