我是Android编程的新手,因此对于许多人来说这似乎是一个简单的问题,但它已经过了2天,我几乎在互联网上的所有地方都进行了搜索,但无法找到解决问题的方法
我正在尝试使用MediaPlayer类流式传输链接(当我在chrome上发布时有效)。虽然我在Chrome上获得了音频,但是当我在我的三星galaxy s上运行应用程序时,我从来没有得到任何东西。我已经使用了互联网许可的应用程序。这是我正在使用的代码:
public class LiveKirtan extends Activity {
MediaPlayer mp;
String url;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_live_kirtan);
url = "http://radio2.sikhnet.com:8020/live";
Uri myUri = Uri.parse(url);
mp = new MediaPlayer();
try {
mp.setDataSource(this, myUri);
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SecurityException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.prepareAsync();
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer player) {
player.start();
}
});
}
}
答案 0 :(得分:0)
确保向您的清单添加以下权限:
<uses-permission android:name="android.permission.INTERNET"/>
此外,Android不支持任何类型的流媒体音频(特别是pre kitkat),因此请务必检查您的流here的兼容性。