我如何通过三星s3内置音乐播放器传递网址来播放歌曲?

时间:2013-04-15 04:55:18

标签: android android-intent android-music-player

Intent intent = new Intent();
ComponentName comp = new ComponentName("com.android.music","com.android.music.MediaPlaybackActivity");
intent.setComponent(comp);
intent.setAction(android.content.Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse(url), "audio/*");
startActivity(intent);

这是我用来在除Galaxy S3之外的其他手机中打开三星播放器的代码。关于galaxy S3,这个包被替换为

ComponentName comp2 = new ComponentName("com.sec.android.app.music","com.sec.android.app.music.AudioPreview");

但是在这种情况下,它仅作为音频预览工作但在暂停时它已完成但是我想要完全像上面的音乐播放器一样播放。所以为此我用这个替换了ComponentName来打开音乐播放器

 ComponentName comp2 = new ComponentName("com.sec.android.app.music",
                    "com.sec.android.app.music.MusicActionTabActivity");

但是在这种情况下,玩家不会播放我通过的网址。它只是打开S3中的默认音乐播放器。我需要用Android默认音乐播放器播放文件。

1 个答案:

答案 0 :(得分:0)

Look Android正在使用AudioPlaybackPreview或其他命名活动来处理来自fileManager或任何其他地方的歌曲播放。

实际上你想使用默认的播放活动,它用于显示所有控件和所有。显示它不可能使用该活动,因为它已链接到具有所有歌曲和所有路径的数据的其他服务。此播放活动控制下一个前一个和所有,与一个播放服务链接。

第三件事是,据我所知, S3几乎提供了相同的布局,可以播放来自filemanager的歌曲或来自任何其他活动的播放。但问题是当你从那里回来时,会停止播放歌曲

参考 android音乐播放器源代码,您将理解为什么无法启动该活动。