我想获取在Android设备上播放的音乐曲目的信息。有没有Android驱动的API可以用来做这个?或者我必须为各自的Android媒体播放器编写一个插件?
发布于 2010-09-24 19:49:37
从技术上讲这是一次黑客攻击。而且只能与Android捆绑的音乐应用程序一起使用。
将此IMediaPlaybackService.aidl复制到您的Project...Refer this帖子中以访问MediaPlayer服务。然后,您可以访问所有这些功能。
package com.android.music;
import android.graphics.Bitmap;
interface IMediaPlaybackService
{
void openFile(String path, boolean oneShot);
void openFileAsync(String path);
void open(in long [] list, int position);
int getQueuePosition();
boolean isPlaying();
void stop();
void pause();
void play();
void prev();
void next();
long duration();
long position();
long seek(long pos);
String getTrackName();
String getAlbumName();
long getAlbumId();
String getArtistName();
long getArtistId();
void enqueue(in long [] list, int action);
long [] getQueue();
void moveQueueItem(int from, int to);
void setQueuePosition(int index);
String getPath();
long getAudioId();
void setShuffleMode(int shufflemode);
int getShuffleMode();
int removeTracks(int first, int last);
int removeTrack(long id);
void setRepeatMode(int repeatmode);
int getRepeatMode();
int getMediaMountedCount();
}对于其他玩家,您需要检查他们是否将其服务公开给其他应用程序。
发布于 2011-05-20 02:09:23
我是Android新手,我不知道这是怎么做到的。但!我知道last.fm Android应用程序必须这样做,因为它会显示当前播放的媒体播放器曲目中的信息,以及“scrobble”(将你在安卓媒体播放器中播放的曲目列表发送到他们的网站)。而且,我也知道他们的应用是开源的。代码在这里:https://github.com/c99koder/lastfm-android/
所以,如果你有时间,你应该能够搜索他们的代码,并弄清楚他们是如何做到的。
https://stackoverflow.com/questions/3786660
复制相似问题