我正在尝试制作Android应用程序,我有一台ip camera,我想要实时查看相机拍摄的内容。 我使用一个名为Motion的程序来捕捉照片。 Jpg然后从浏览器,例如Firefox,输入“ http:// ip:port ”可能是摄像头捕获内容的实时视图。 对于android我写了这段代码:
public class WebviewpfcActivity extends Activity {
public WebView wv;
Uri uri;
ContentValues values;
Bitmap bitmap;
Canvas mCanvas;
public void onCreate(Bundle icicle){
super.onCreate(icicle);
Bundle extras=getIntent().getExtras();
setContentView(R.layout.main);
wv=(WebView) findViewById(R.id.webview);
wv.getSettings().setJavaScriptEnabled(true);
wv.getSettings().setPluginsEnabled(true);
wv.loadUrl("http://myIP:myPort");
}
}
它不起作用,屏幕变成空白,而不是你会做错了,因为使用名为“tinycam Monitor”的程序引入相同的IP和相同的端口,如果看起来像这样!。
请帮助,非常感谢。
答案 0 :(得分:1)
您的清单中缺少以下一行:
<uses-permission android:name="android.permission.INTERNET">
并尝试将main.xml中的webview更改为:
<WebView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
答案 1 :(得分:1)
如果您的manifest.xml和layout.xml编码正确。在您的活动中,您可以使用如下代码:
WebView webView = (WebView) findViewById(R.id.web_view);
String html = "<!DOCTYPE html>\n" +
"<html>\n" +
"<head>\n" +
"\t<title></title>\n" +
"</head>\n" +
"<body>\n" +
"<img src=\"http://192.168.1.7:8081/\">\n" +
"</body>\n" +
"</html>";
String mime = "text/html";
String encoding = "utf-8";
webView.getSettings().setJavaScriptEnabled(true);
webView.loadDataWithBaseURL(null, html, mime, encoding, null);
如你所见,我在这样的html中使用了我的本地ip,它运行良好。我在linux os中使用了运动ip camera,没问题。