Web ラジオを実装するパブリッシャー向けのプレイ シャウトキャスト ストリーム用の Android アプリを作成しています。
API レベル 8 (android 2.2) では、MediaPlayer クラスはストリームを再生できるため、次のようになります。
Uri myUri = ....; // initialize Uri here
MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.setDataSource(getApplicationContext(), myUri);
mediaPlayer.prepare();
mediaPlayer.start();
実際のアプリでは prepareasync() を使用しているため、UI は ProgressDialog に応答します。
しかし、この例では prepare() は問題ありません。
現在... Android < 2.2 (API レベル < 8) では、メディアプレーヤーは再生されません。Android >= 2.2 (API レベル >= 8) では mediaplayer が再生されますが、すべてのデバイスでは再生されません。
このコードは以下で動作します:
Nexus One (CyanogenMod 7、Android 2.3.x) Samsung Galaxy S (Stock Rom、Android 2.3.x) Samsung Galaxy S 2 (Stock Rom、Android 2.3.x) HTC Desire (Stock Rom、Android 2.3.x) HTC Desire HD (Stock Rom、Android 2.3.x) エミュレータ (Android 2.2) Asus eee Pad Transformer TF101 (Stock Rom、Android 4.0.3)
このコードは、Android > 2.2 を搭載したすべての LG デバイスで機能するとは限りません...しかし...なぜですか?
LGデバイスでShoutcastストリームを再生するにはどうすればよいですか?