Android商店音乐播放列表的哪个(以及如何)? -- music 领域 和 music-player 领域 android 相关 的问题

Where (and how) does Android store music playlists?


32
vote

问题

中文

我注意到Android在音乐应用程序中保持相同的音乐播放列表。 这些播放列表存储在哪里?如何(以何种格式)存储?我可以通过USB存储链接远程访问它们,或者在那里,我可以用来访问它们吗?

相关问题:音乐传输和播放列表 < / p>

英文原文

I've noticed that Android keeps the same music playlists across music apps. Where are these playlists stored? How (in what format) are they stored? Can I access them remotely via the USB storage link, or is there instead an app I can use to access them?

Related question: Music transfer and playlists

     
 
 

回答列表

24
 
vote
vote
最佳答案
 

他们存储在你的 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 Beta,您创建的播放列表似乎不会出现在其他应用中,但他们确实有DB中的条目。它看起来可能是因为 MusicSourceAccount 字段设置为您的Google音乐帐户ID;其他应用程序将其设置为0,并且这些应用程序显示在从DB中获取数据的所有应用程序中。

 

They're stored in your music.db file - mine is /data/data/com.google.android.music/databases; I'm not sure if this is exactly the same across all devices but I'd guess it probably is.

They live in a combination of the LISTS and LISTITEMS tables, which are defined as such:

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> 

Interestingly, if you're using the new Google Music Beta, playlists that you create don't seem to appear in other apps but they do have entries in the DB. It looks like this is possibly because the MusicSourceAccount field is set to your Google Music account id; other apps set it to 0, and those appear across all apps that take data from the DB.

 
 
1
 
vote

我找到了一个 post从xda开发人员。

如果读取的人在上面列出的目录中找不到它,请尝试此举:

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

然后您可以将其复制到计算机,使用您的口味的SQLite编辑器并以自己的意志操纵数据。

 

I found a post from XDA Developers.

If anyone reading this doesn't find it on the directory listed above, try this one instead:

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

You can then copy it to your computer, use the SQLite editor of your taste and manipulate the data at your own will.

 
 

相关问题

3  客户端 - 服务器Android音频远程  ( Client server android audio remote ) 
我想获得运行Linux的低功耗PC(ARM或ATOM)并控制它通过Android应用程序播放的音乐,有效地成为Logitech的Squeezbox的Androids版本。我不想在框中安装x Windows。有人听说过这样的应用程序吗? ...

5  如何语音命令音乐播放器?  ( How to voice command a music player ) 
我想知道是否有可能对语音命令的音乐操作,如下一个曲目,甚至删除轨道很好。 我的运动,划船,不允许我通过手与智能手机互动,所以,这些语音命令将非常有用。 在我的尝试中,我刚刚发现收听,这不是那种有趣的。 我使用的是Android 2.3.7 - Cyanogenmod 7.2,用于Defy ...

2  Android 8.1偶尔播放随机音乐,10秒左右后停止  ( Android 8 1 plays random music sporadically and stops after 10 seconds or so ) 
我有一个运行 8.1 和sporady的Android手机,它将运行一些我不知道的随机音乐。然后它在几秒钟后立即停止。我的浏览器已关闭,手机正在振动。检查开发人员模式中的运行进程不会透露任何可疑的。我也没有安装任何阴影应用程序。我该怎么做才能确定问题? ...

10  如何在蓝牙遥控器上设置“播放”按钮行为  ( How to set play button behavior on bluetooth remote ) 
我有一个火箭般的蓝牙耳机与我的motodroid v1(froyo)配对。 BT耳机具有多媒体控件(音量上/下,下一个曲目,上一个曲目,播放/暂停)和触发语音拨号的按钮。我已经在免提耳机配置文件和高级音频配置文件上配对。 当我点击耳机上的播放按钮时,行为是不可预测的。我可能有音乐应用程序,但点击播放会导致收听启动并...

6  为什么潘多拉随机推进歌曲?  ( Why does pandora advance songs randomly ) 
我使用pandora 很多。不幸的是,我注意到,当在工作中使用耳机时,它会经常随机跳过歌曲。在短短30-90秒之后,它可能会跳到下一个曲目等。 非常讨厌。到底是怎么回事? 我通常在稳固的3g上,当发生这种情况而是不完全。 ...

1  为什么一些歌曲在媒体播放器中没有正确命名?  ( Why are some songs are not named correctly in media players ) 
我的集合中的大多数歌曲正确显示。但是,有些人会将歌曲的名称显示为"01歌曲名称" 而不是"歌曲名称" 。请注意,文件名为"01歌名称.mp3" 。 他们也出现在专辑中的顺序中,因此似乎并未考虑到轨道号。 当我检查id标签时,所有信息都是正确的。 这发生在我尝试的所有媒体播放器中。 有没有人有任何想法,为什么发生这种情...

11  音乐播放器与智能洗牌选项[已关闭]  ( Music player with a smart shuffle option ) 
关闭。这个问题是 off-topic 。它目前不接受答案。 想要改进这个问题?更新这个问题,所以它是关于android爱好者堆栈交换的主题。 cl...

10  播放音乐时如何禁用通知声音?  ( How can i disable the notification sounds while playing music ) 
我不喜欢覆盖我的音乐播放的通知听起来,但我找不到任何设置来播放音乐时禁用通知声音。 我也不喜欢声音覆盖的方式。 iPhone处理更好。 是有没有办法将其设置为努力,更像是iPhone或在播放音乐时关闭通知? ...

3  媒体播放器章节支持  ( Media player with chapters support ) 
是否有一个带有章节标记支持的MediaPlayer?我想听音频书籍和经济学家音频播客(&gt; 7小时/集)。 ...

5  我可以在我的Android上从iTunes中玩DRM音乐吗?  ( Can i play drm music from itunes on my android ) 
我认为iTunes上的DRM内容只能在iTunes上播放,但是我看到了 songbird ,a非Apple应用程序,可以播放DRM受保护音乐。 是否有一个应用程序,它使用类似的技术可以播放我的旧iTunes购买? 是有没有其他方式在我的Android(野火)上播放我的音乐? ...

3  如何使用卷按钮来跳过歌曲?  ( How can i use the volume buttons for skipping songs ) 
有没有办法使用音量按钮更改Nexus One上的歌曲? ...

5  音乐播放器中的虚拟器声音效果是什么以及它如何工作?  ( What is the virtualizer sound effect in music players and how does it work ) 
我使用 playerpro 到在我的智能手机上播放音乐。 在PlayerPro中,存在"声音效果" ,类似于DSP管理器。其中一个声音效果是 virtualizer 。 当我启用虚拟化器时,即使在1%处,它真的变化了音乐的感觉方式。音频变得更加回声,听起来对我来说听起来像是更接近音乐。它给了我一个活音乐会的感觉。 当...

11  造成音乐播放的原因是意外停止/暂停?  ( What is causing music playback to stop pause unexpectedly ) 
moto droid v1 Android 2.2.1 是否有其他人遇到随机音乐播放停止/暂停手机?你知道造成什么,还是如何防止它? 我一直在尝试进入问题的根源,我认为它必须与音乐播放服务有关。我已经尝试过几个应用程序(股票音乐应用程序,双人驾驶,立方(3))。在每种情况下,行为是相同的。看似随意,随着明显的触...

6  禁用音乐按钮  ( Disable music button ) 
如何禁用LG GW620侧面的硬件音乐按钮?当我坐在会议上时,我一直在口袋里触发它,导致Foo Fighters的随机爆发。 只是在屏幕被锁定时禁用它是最好的,但完全禁用它会比一无所有。 我的gw620已经使用 Openetna 固件升级到Android 2.2(Froyo)。在此之前,我认为音乐按钮根本没有做任何事...

11  将音乐从PC传输到手机的选项是什么?  ( What are the options for streaming music from pc to phone ) 
我有兴趣通过手机播放电脑上的音乐 - 主要是我可以将手机插入房子不同地区的扬声器。寻找应用程序,我意识到你实际上有一些相当不同的方式,你可以这样做: 运行一台可通过互联网访问的音乐服务器,通过电话或网络浏览器访问(例如audiogalaxy,subsonic) 运行提供单个音频流的音频流式服务器(例如,声音 - 您...




© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.