获得媒体播放器的Andr​​oid当前播放歌曲的详细信息 [英] Getting the details of the current song playing in the media player in Android

查看:201
本文介绍了获得媒体播放器的Andr​​oid当前播放歌曲的详细信息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我目前使用类似下面来检索一个信息的方法,但是我不知道我怎么能得到流派。有谁知道什么该字符串额外的要求流派或是否有多余的呢?谢谢你。

如何获得当前音乐曲目信息?

 公共类CurrentMusicTrackInfoActivity扩展活动
{

 公共静态最后弦乐SERVICECMD =com.android.music.musicservicecommand;

@覆盖
公共无效的onCreate(包savedInstanceState)
{
super.onCreate(savedInstanceState);
的setContentView(R.layout.main);



com.sec.android.app.music.player.service.CorePlayerService

IntentFilter的IF =新的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);
}

私人的BroadcastReceiver mReceiver =新的BroadcastReceiver()
{

@覆盖
公共无效的onReceive(上下文的背景下,意图意图)
{
串动= intent.getAction();
字符串CMD = intent.getStringExtra(命令);
Log.v(标签,动作+/+ CMD);
字符串艺术家= intent.getStringExtra(艺术家);
字符串专辑= intent.getStringExtra(专辑);
字符串跟踪= intent.getStringExtra(跟踪);
Log.v(标签,艺术家+:+专辑+:+轨);
Toast.makeText(CurrentMusicTrackInfoActivity.this,跟踪,Toast.LENGTH_SHORT).show();
}
};

}
 

解决方案

事实证明,没有多余的流派过去了,就在3以上和ID。我能看到通过额外使用下面的code:

 叠B = intent.getExtras();
        设置<字符串>设定= b.keySet();
        迭代它= set.iterator();
        而(it.hasNext()==真){
            Toast.makeText(getApplicationContext(),+ it.next(),Toast.LENGTH_SHORT).show();
        }
 

I'm currently using a method similar to the one below to retrieve the information, however I am not sure how I can obtain the genre. Does anyone know what the string extra is called for genre or if there is an extra at all? Thanks.

How to get current music track info?

public class CurrentMusicTrackInfoActivity extends Activity 
{

 public static final String SERVICECMD = "com.android.music.musicservicecommand";

@Override
public void onCreate(Bundle savedInstanceState) 
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);



com.sec.android.app.music.player.service.CorePlayerService

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.v("tag ", action + " / " + cmd);
String artist = intent.getStringExtra("artist");
String album = intent.getStringExtra("album");
String track = intent.getStringExtra("track");
Log.v("tag",artist+":"+album+":"+track);
Toast.makeText(CurrentMusicTrackInfoActivity.this,track,Toast.LENGTH_SHORT).show(); 
}
};

}

解决方案

It turns out there is no genre extra passed, just the 3 above and id. I was able to see the extras passed using the following code:

Bundle b = intent.getExtras();
        Set<String> set = b.keySet();
        Iterator it = set.iterator();
        while(it.hasNext()==true){
            Toast.makeText(getApplicationContext(),""+it.next(), Toast.LENGTH_SHORT).show();
        }

这篇关于获得媒体播放器的Andr​​oid当前播放歌曲的详细信息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆