次のように開発したいのですが、良い例が見つかりませんでした:
URLにmp3エンコードをダウンロードせずにプレイしたい。ユーザーが停止しない限り、mp3はバックグラウンドで再生されます。マルチタスクをしていると思います。
サンプル文書またはアドバイスをお願いします。ありがとう。
これら2つのチュートリアルをご覧ください。これらでは、.mp3ファイルはWeb URLを介して再生されます。
Android MediaPlayer class を使用してURLからmp3メディアファイルをストリーミングする例
また、バックグラウンドで.mp3ファイルを再生する場合は、サービスとAIDLを使用する必要があると思います。
基本的なAndroid-Music Playerのデモをご覧ください MusicDroid-オーディオプレーヤーパートII オーディオプレーヤーのサービスとAIDlの使用方法を説明しています。
ありがとう。
これを行う簡単な方法::
MediaPlayer mp = new MediaPlayer();
mp.setDataSource(PATH_TO_FILE);
mp.prepare();
mp.start();
MediaPlayer.create(context、uri);を使用できます。コンテキスト(this)と、曲を再生したい場所のURIを渡します
_public class PlayAudioManager {
private static MediaPlayer mediaPlayer;
public static void playAudio(final Context context, final String url) throws Exception {
if (mediaPlayer == null) {
mediaPlayer = MediaPlayer.create(context, Uri.parse(url));
}
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
killMediaPlayer();
}
});
mediaPlayer.start();
}
private static void killMediaPlayer() {
if (mediaPlayer != null) {
try {
mediaPlayer.reset();
mediaPlayer.release();
mediaPlayer = null;
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
_
アクティビティの例では、PlayAudioManager.playAudio(context, http://dict.youdao.com/dictvoice?audio=good&type=1)
を呼び出すだけです
if (!isPlaying)
{
isPlaying = true;
mp = new MediaPlayer();
try {
mp.reset(); // new one
mp.setDataSource(AudioPlayer.this, myUri);
//mp.prepareAsync();
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.prepare(); // don't use prepareAsync for mp3 playback
mp.start();
// String songTitle = songsList.get(songIndex).get("songTitle");
// songTitleLabel.setText(songTitle);
songProgressBar.setProgress(0);
songProgressBar.setMax(100);
// Updating progress bar
updateProgressBar();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
else
{
isPlaying = false;
mp.release();// stop Playing
//mp = null;
}
動作しているMediaPlayerで使用しています。ダウンロードする必要はありません。
編集:
ああ、これはAndroid特定であり、(単なる)Webサイトではありません。これらのソリューションと、他の人が言及したMediaPlayer
ソリューションの両方を見ることをお勧めします。 MediaPlayer
を使用する場合は、回答を受け入れることをお勧めします:)
W3schoolsでこれを行う方法の多くの例があります。
http://www.w3schools.com/html/html_sounds.asp
あなたはできる:
<audio>
要素を介してHTMLでオーディオを再生する<embed>
要素を使用します<object>
要素を使用します以下は、彼らが「最良」と表現するソリューションです。
<audio controls="controls" height="50px" width="100px">
<source src="song.mp3" type="audio/mpeg" />
<source src="song.ogg" type="audio/ogg" />
<embed height="50px" width="100px" src="song.mp3" />
</audio>
これはHTML 5要素であるため、すべてのブラウザーで動作するとは限らないことに注意してください。ただし、リッチマルチメディアエクスペリエンスを開発する必要があるブラウザーであれば、おそらく動作すると思います。