2014-11-06 63 views
1

我需要获取当前曲目在另一个应用中播放的歌曲详情。除了持续时间,我可以获得以下详细信息。有人请建议我如何获得持续如何从其他音乐播放器的当前播放曲目获取歌曲时长

String artist = intent.getStringExtra("artist"); 
String album = intent.getStringExtra("album"); 
String track = intent.getStringExtra("track"); 
String time = intent.getStringExtra("duration"); 
+0

我想我们需要更多的细节。你正在建立一个接收器吗?您的其他应用是否启动了您的歌曲详情应用? – 2014-11-06 14:40:33

+0

是..广播接收器 – Debugger 2014-11-06 14:41:29

回答

1

是的,我们可以得到正在播放另一个应用程序的当前曲目的歌曲持续时间。我找到了解决方案。

long milliseconds=intent.getLongExtra(MediaStore.Audio.AudioColumns.DURATION, 0); 

它现在工作的罚款:)

0

如果其他应用程序也被你处理,你可以用你的意图设置时间数据,可以从意向在你的访问活动的价值。

MediaMetadataRetriever metaRetriever = new MediaMetadataRetriever(); 
    metaRetriever.setDataSource(filePath); 

String songDuration = 
    metaRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION); 

long duration = Long.parseLong(songDuration); 
String seconds = String.valueOf((duration % 60000)/1000); 

String minutes = String.valueOf(duration/60000); 

Sting time = ""; 

time = minutes + ":" + seconds; 
    // close object 
    metaRetriever.release(); 
相关问题