1
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以外的其他手機中的三星播放器的代碼。關於銀河S3這個包被替換如何通過URL與三星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默認音樂播放器播放文件。
爲什麼不只是創建audo/mp3的意圖,讓用戶選擇要啓動它的應用程序? –
在這種情況下,當我們從手機中選擇音樂播放器時,只有AudioPreview選項被啓用。這首歌暫停後完成。我需要將歌曲推到背景 – vishnu
不幸的是,可能未安裝Android默認音樂播放器。你永遠不能假設給定的應用程序。更糟糕的是,不同型號的三星手機有不同的軟件佈局 - 它們都不使用相同的音樂播放器。即使在不同運營商的S3可能會改變音樂應用,例如Verizon已經購買了一款,並且他們希望三星使用它。你正在尋求一條痛苦的世界,沿着這條路線走下去。這就是爲什麼添加基於MIME類型的意圖過濾器的原因。你將最終擁有數十個特殊的陣列,並隨着時間的推移增加更多。我真的建議反對它。 –