作者:艺静不循环_545_191 | 来源:互联网 | 2022-11-16 16:28
我有一个应用程序(我们称它为主应用程序),它在资产文件夹中有一个index.html页面。index.html是带有一些Javascript的简单HTML文件。它不需要PHP或MySql。
我想做的是将NanoHttpd服务器嵌入到我的主应用程序中,并在应用程序启动或恢复时自动启动Nano服务器,并在我的应用程序中查看我的index.html文件。虽然我知道我可以使用
webView.loadUrl("file:///android_asset/index.html");
要访问index.html文件,在这种情况下是不可能做到的。因此需要使用Web服务器。
现在,我有一个与Web服务器不同的专用应用程序,该应用程序在http:// localhost:8080上运行。当我打开主应用程序时,它会自动运行。如您所见,为了查看HTML文件,您需要启动Web服务器,启动它,然后回到Main应用程序并启动它。我想要一个解决方案,其中当我在我的主应用程序吃午饭时,NanoHttpd服务器会自动启动,并开始在Web视图上显示index.html内容。这是我的代码,可以在我的主应用程序和网络服务器上完美运行
WebView wv;
wv = (WebView) findViewById(R.id.webView1);
WebSettings webSettings = wv.getSettings();
webSettings.setJavascriptEnabled(true);
wv.loadUrl("http://localhost:8080/index.html");
尽管O找不到确切的文档,但我尝试了以下链接中的两种不同方法
在Android中使用NanoHTTPD
http://programminglife.io/android-http-server-with-nanohttpd/
两者都不起作用,一个仅显示白页,而其他仅给我响应,表明服务器正在运行。
那么,当我的应用程序启动时,如何自动启动NanoHttpd服务器并从资产文件夹自动将html文件启动至Webview?如果对NanoHttpd的要求太多,是否还有另一种方法将Web服务器嵌入到应用程序中并启动index.html?