Android จัดเก็บเพลย์ลิสต์เพลงอยู่ที่ไหนและอย่างไร


32

ฉันสังเกตเห็นว่า Android เก็บเพลย์ลิสต์เพลงเดียวกันไว้ในแอพเพลง เพลย์ลิสต์เหล่านี้อยู่ที่ไหน มีการจัดเก็บอย่างไร (ในรูปแบบใด) ฉันสามารถเข้าถึงพวกเขาจากระยะไกลผ่านลิงค์ที่เก็บข้อมูล USB หรือมีแอพที่ฉันสามารถใช้เพื่อเข้าถึงพวกเขาได้หรือไม่

คำถามที่เกี่ยวข้อง: การถ่ายโอนเพลงและเพลย์ลิสต์


คำตอบ:


24

มันถูกเก็บไว้ในmusic.dbไฟล์ของคุณ- ของฉันคือ/data/data/com.google.android.music/databases; ฉันไม่แน่ใจว่านี่จะเหมือนกันในทุกอุปกรณ์หรือไม่ แต่ฉันเดาว่าน่าจะเป็น

พวกเขาอาศัยอยู่ในการรวมกันของLISTSและLISTITEMSตารางซึ่งกำหนดไว้เช่น:

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>

น่าสนใจถ้าคุณใช้ Google Music เบต้าใหม่เพลย์ลิสต์ที่คุณสร้างจะไม่ปรากฏในแอปอื่น แต่มีรายการใน DB ดูเหมือนว่าอาจเป็นเพราะMusicSourceAccountฟิลด์นี้ตั้งเป็นรหัสบัญชี Google Music ของคุณ แอปอื่น ๆ ตั้งค่าเป็น 0 และแอปเหล่านั้นจะปรากฏในแอพทั้งหมดที่รับข้อมูลจากฐานข้อมูล


1

ผมพบว่าโพสต์จากนักพัฒนา XDA

หากใครก็ตามที่อ่านข้อความนี้ไม่พบในไดเรกทอรีข้างต้นให้ลองวิธีนี้แทน:

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

จากนั้นคุณสามารถคัดลอกไปยังคอมพิวเตอร์ของคุณใช้โปรแกรมแก้ไข SQLite สำหรับรสนิยมของคุณและจัดการข้อมูลตามที่คุณต้องการ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.