首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从MediaPlayer获取当前播放歌曲的详细信息

如何从MediaPlayer获取当前播放歌曲的详细信息
EN

Stack Overflow用户
提问于 2010-09-01 18:12:10
回答 4查看 30.6K关注 0票数 17

有没有办法获取MediaPlayer正在播放的当前歌曲的详细信息

EN

回答 4

Stack Overflow用户

发布于 2013-06-09 02:13:08

仅供参考,这是可行的:

代码语言:javascript
运行
复制
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.util.Log;

public class MediaPlayer extends Activity {

public static final String SERVICECMD = "com.android.music.musicservicecommand";
public static final String CMDNAME = "command";
public static final String CMDTOGGLEPAUSE = "togglepause";
public static final String CMDSTOP = "stop";
public static final String CMDPAUSE = "pause";
public static final String CMDPREVIOUS = "previous";
public static final String CMDNEXT = "next";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
IntentFilter iF = new IntentFilter();
iF.addAction("com.android.music.metachanged");
iF.addAction("com.android.music.playstatechanged");
iF.addAction("com.android.music.playbackcomplete");
iF.addAction("com.android.music.queuechanged");

registerReceiver(mReceiver, iF);
}

private BroadcastReceiver mReceiver = new BroadcastReceiver() {

@Override
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();
String cmd = intent.getStringExtra("command");
Log.d("mIntentReceiver.onReceive ", action + " / " + cmd);
String artist = intent.getStringExtra("artist");
String album = intent.getStringExtra("album");
String track = intent.getStringExtra("track");
Log.d("Music",artist+":"+album+":"+track);
}
};
}
票数 13
EN

Stack Overflow用户

发布于 2010-09-01 18:27:36

没有用于从MediaPlayer实例获取当前播放文件信息的documented method,您需要让您的应用程序以另一种方式存储该信息。如果您使用服务来跟踪您的MediaPlayer实例(这是我推荐的),那么这应该不会太难。

票数 7
EN

Stack Overflow用户

发布于 2010-09-01 19:13:20

我认为你需要有你自己的模型类,你可以在其中设置和获取你的歌曲标题。有关此信息和其他信息,请参阅堆栈溢出问题:

How to set the PlayList Index for Mediaplayer(ExpressionMediaPlayer:Mediaplayer)

如果你热衷于了解它是如何实现的,你可以获得source,看看它们是如何实现的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3616956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档