gpt4 book ai didi

java - 从 IP 网络摄像头获取流

转载 作者:行者123 更新时间:2023-11-30 02:49:07 26 4
gpt4 key购买 nike

我试图在浏览器模式下从 Android 上的 IP 网络摄像头应用程序获取流一段时间,但没有成功。我尝试使用 webview 加载我的笔记本电脑上托管的 html 页面,但在我的应用程序中无法正常工作,但可以在 chrome for android 中工作...这是我的代码:

Camera.html

 <img id="browser_video" class="video-image" alt="video" src="http://192.168.1.101:8080/video">

主 Activity

    import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.webkit.WebView;

public class MainActivity extends Activity{


WebView wv;
String URL = "http://192.168.1.187:8080/camera.html";

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

wv = (WebView) findViewById(R.id.wvImage);
wv.loadUrl(URL);
}
}

activity_main:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<WebView
android:id="@+id/wvImage"
android:layout_width="match_parent"
android:layout_height="match_parent" />

</LinearLayout>

接下来要尝试什么?

这是它在 chrome 和我的应用程序上的样子

http://i1258.photobucket.com/albums/ii532/csanonymus/Screenshot_2014-07-01-17-57-28_zps22e1e220.png

http://i1258.photobucket.com/albums/ii532/csanonymus/Screenshot_2014-07-01-17-57-07_zpsad9244d3.png

最佳答案

确保你有:

WebSettings webSettings = wv.getSettings();
webSettings.setJavaScriptEnabled(true);

它只是显示一个空白屏幕吗?

编辑:在 AndroidManifest.xml 中为 Activity 标签添加 android:hardwareAccelerated="true"

我自己的网络摄像机代码:

这是网络摄像机 Controller

public class WebviewActivity extends Activity {

String url = "http://192.168.1.187:8080/camera.html";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);

//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

setContentView(R.layout.activity_mini_bot_controller);

WebView webview = (WebView) findViewById(R.id.browser);
Intent intent = getIntent();
String myIP = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
webview.getSettings().setJavaScriptEnabled(true);
webview.setWebViewClient(new MyWebViewClient ());
webview.loadUrl(url);


}


}

然后 Activity :

public class MainActivity extends ActionBarActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent(this, MiniBotController.class);
startActivity(intent);
}

}

希望这对您有所帮助。

注意:还值得一提的是,该程序从您输入 IP 地址并点击“播放”的 fragment 开始,它会运行 Webview。

希望是最后一次编辑:我将代码修改为只是拖放,你需要两个文件。一个名为 WebViewActivity,一个名为 MainActivity。主要 Activity 启动第二个 Activity 的 Intent ,该 Activity 将处理所有事情。这是一个可行的示例,因为我有时不得不使用它。

关于java - 从 IP 网络摄像头获取流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24513064/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com