在播放使用的Android的WebView一个网址 [英] Playing a URL using WebView in android
本文介绍了在播放使用的Android的WebView一个网址的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我只需要知道如何在Android的玩这个下面的链接...我试图在模拟器其工作但不是在设备为什么.....帮助是AP preciated ......
http://stream.radiosai.net:8002/
解决方案
我已经在我的实现播放音频流app.Directly我在这里复制粘贴此code上卸下摆臂不必要的数据,并使用它。我已经测试您的链接它,是为我工作。
进口java.io.IOException异常;进口android.app.Activity;
进口android.app.ProgressDialog;
进口android.graphics.drawable.AnimationDrawable;
进口android.media.AudioManager;
进口android.media.MediaPlayer;
进口android.media.MediaPlayer.OnBufferingUpdateListener;
进口android.media.MediaPlayer.OnErrorListener;
进口android.media.MediaPlayer.OnInfoListener;
进口android.media.MediaPlayer.On preparedListener;
进口android.os.Bundle;
进口android.os.Handler;
进口android.os.Message;
进口android.widget.CompoundButton;
进口android.widget.CompoundButton.OnCheckedChangeListener;
进口android.widget.ImageView;
进口android.widget.ToggleButton;公共类StreamAudio扩展活动实现了在preparedListener,
OnErrorListener { MediaPlayer的熔点;
私人切换按钮BTN;
私人ImageView的IMG;
私人布尔标志= FALSE;
AnimationDrawable frameAnimation;
ProgressDialog进展情况;
字符串URL =http://stream.radiosai.net:8002/; @覆盖
公共无效的onCreate(捆绑冰柱){
super.onCreate(冰柱);
的setContentView(R.layout.main); BTN =(切换按钮)findViewById(R.id.play);
IMG =(ImageView的)findViewById(R.id.radio_image); img.setBackgroundResource(R.drawable.frames);
frameAnimation =(AnimationDrawable)img.getBackground(); 熔点为新的MediaPlayer(); 进度= ProgressDialog.show(这一点,空,载入中...,假的,真正的); 可运行R =新的Runnable(){ @覆盖
公共无效的run(){
setPlayBack();
}
};
主题日=新主题(R);
th.start();
mp.setOn preparedListener(本);
//mp.setOnBufferingUpdateListener(this);
mp.setOnErrorListener(本);
// mp.setOnInfoListener(本);
btn.setOnCheckedChangeListener(新OnCheckedChangeListener(){ @覆盖
公共无效onCheckedChanged(CompoundButton buttonView,布尔器isChecked){ 如果(标志)
{ 如果(!器isChecked)
{
btn.setBackgroundResource(R.drawable.btn_stop);
mp.start();
frameAnimation.start();
} 其他
{
btn.setBackgroundResource(R.drawable.btn_play);
frameAnimation.stop();
mp.stop();
mp.reset();
标志= FALSE;
}
}
其他
{
btn.setChecked(假); 进度= ProgressDialog.show(StreamAudio.this,NULL,载入中...,假的,假的);
可运行R =新的Runnable(){ @覆盖
公共无效的run(){
// TODO自动生成方法存根
setPlayBack();
}
};
主题日=新主题(R);
th.start();
} }
});
} @覆盖
保护无效的onDestroy(){ super.onDestroy();
mp.release(); } @覆盖
在prepared(MediaPlayer的MP)公共无效{ 标志=真实的;
handler.sendEmptyMessage(0);
}
@覆盖
公共布尔的onError(MediaPlayer的熔点,诠释了什么,整型附加){ mp.release();
返回false;
}
私人无效setPlayBack()
{
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
尝试{
mp.setDataSource(URL);
}赶上(抛出:IllegalArgumentException E1){
e1.printStackTrace();
}赶上(E1 IllegalStateException异常){
e1.printStackTrace();
}赶上(IOException异常E1){
e1.printStackTrace();
}
。MP prepareAsync();
}
私人处理程序处理程序=新的处理程序(){
@覆盖
公共无效的handleMessage(消息MSG){
progress.dismiss();
btn.setBackgroundResource(R.drawable.btn_stop);
frameAnimation.start();
mp.start();
}
};
}
main.xml中:
<?XML版本=1.0编码=UTF-8&GT?;
<的RelativeLayout的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:方向=垂直的android:layout_width =FILL_PARENT
机器人:layout_height =FILL_PARENT>
<的LinearLayout机器人:layout_alignParentBottom =真
机器人:比重=中心的android:layout_width =FILL_PARENT
机器人:背景=@绘制/ bottom_bar机器人:layout_height =WRAP_CONTENT> <切换按钮的android:背景=@绘制/ btn_stop机器人:检查=false的机器人:ID =@ + ID /播放机器人:textOff =机器人:纹元=
机器人:layout_width =WRAP_CONTENT机器人:layout_height =WRAP_CONTENT>< /切换按钮>
< / LinearLayout中>
< ImageView的机器人:ID =@ + ID / radio_image
机器人:layout_height =WRAP_CONTENT的android:layout_width =WRAP_CONTENT
机器人:layout_centerInParent =真正的>< / ImageView的>< / RelativeLayout的>
I just need to know how to play this below link in android...i tried it in emulator its working but not on device why.....Help is appreciated......
http://stream.radiosai.net:8002/
解决方案
Already i have implemented play streaming audio in my app.Directly i paste this code here .Remove unnecessary data and use it.i have tested your link in it ,is working for me.
import java.io.IOException;
import android.app.Activity;
import android.app.ProgressDialog;
import android.graphics.drawable.AnimationDrawable;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnBufferingUpdateListener;
import android.media.MediaPlayer.OnErrorListener;
import android.media.MediaPlayer.OnInfoListener;
import android.media.MediaPlayer.OnPreparedListener;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ImageView;
import android.widget.ToggleButton;
public class StreamAudio extends Activity implements OnPreparedListener,
OnErrorListener {
MediaPlayer mp;
private ToggleButton btn;
private ImageView img;
private boolean flag = false;
AnimationDrawable frameAnimation;
ProgressDialog progress;
String url="http://stream.radiosai.net:8002/";
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
btn = (ToggleButton) findViewById(R.id.play);
img = (ImageView) findViewById(R.id.radio_image);
img.setBackgroundResource(R.drawable.frames);
frameAnimation = (AnimationDrawable) img.getBackground();
mp = new MediaPlayer();
progress=ProgressDialog.show(this, null ,"Loading...",false,true);
Runnable r=new Runnable() {
@Override
public void run() {
setPlayBack();
}
};
Thread th=new Thread(r);
th.start();
mp.setOnPreparedListener(this);
//mp.setOnBufferingUpdateListener(this);
mp.setOnErrorListener(this);
// mp.setOnInfoListener(this);
btn.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(flag)
{
if(!isChecked)
{
btn.setBackgroundResource(R.drawable.btn_stop);
mp.start();
frameAnimation.start();
}
else
{
btn.setBackgroundResource(R.drawable.btn_play);
frameAnimation.stop();
mp.stop();
mp.reset();
flag=false;
}
}
else
{
btn.setChecked(false);
progress=ProgressDialog.show(StreamAudio.this, null ,"Loading...",false,false);
Runnable r=new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
setPlayBack();
}
};
Thread th=new Thread(r);
th.start();
}
}
});
}
@Override
protected void onDestroy() {
super.onDestroy();
mp.release();
}
@Override
public void onPrepared(MediaPlayer mp) {
flag = true;
handler.sendEmptyMessage(0);
}
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
mp.release();
return false;
}
private void setPlayBack()
{
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
try {
mp.setDataSource(url);
} catch (IllegalArgumentException e1) {
e1.printStackTrace();
} catch (IllegalStateException e1) {
e1.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}
mp.prepareAsync();
}
private Handler handler=new Handler(){
@Override
public void handleMessage(Message msg) {
progress.dismiss();
btn.setBackgroundResource(R.drawable.btn_stop);
frameAnimation.start();
mp.start();
}
};
}
main.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout android:layout_alignParentBottom="true"
android:gravity="center" android:layout_width="fill_parent"
android:background="@drawable/bottom_bar" android:layout_height="wrap_content">
<ToggleButton android:background="@drawable/btn_stop" android:checked="false" android:id="@+id/play" android:textOff="" android:textOn=""
android:layout_width="wrap_content" android:layout_height="wrap_content"></ToggleButton>
</LinearLayout>
<ImageView android:id="@+id/radio_image"
android:layout_height="wrap_content" android:layout_width="wrap_content"
android:layout_centerInParent="true"></ImageView>
</RelativeLayout>
这篇关于在播放使用的Android的WebView一个网址的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文