我想知道是否有办法从Android SD卡显示本地图像到WebView?
我已经检查了这个site以及类似的问题,但他们都说你可以使用loadDataWithBaseUrl。但是他们所有人都没有达到我的期望,例如:
String html = new String();
html = ("<html><body><header><h1>Title</h1></header><section><img src=\""+URI_PREFIX+IMAGE_FILENAME+"\" align=left><p>Content</p></section></body></html>" );
web.loadDataWithBaseURL(URI_PREFIX,
html,
"text/html",
"utf-8",
"");
它从Java(Android)创建一个html,我不希望它像那样。我希望它只加载网址(例如 http://example.com )和将Android SD卡中的本地图片传递给 http://example.com 。我希望这样,因为URL会随着时间的推移而改变,并且没有办法如果我每次需要更改html时都必须更改我的Android应用程序。
使用案例是: 在webview /网站上,我将调用Android的功能来打开相机并拍照(直到这里工作正常)。问题来了,图片保存到Android本地SD卡,我需要在webview /网站上显示图像,到目前为止我还没有找到任何答案。/ p>
需要你的帮助,谢谢
答案 0 :(得分:0)
1.遵循以下代码。
WebView mWebView;
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setAllowFileAccess(true);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setBuiltInZoomControls(true);
String base =Environment.getExternalStorageDirectory().getAbsolutePath().toString();
String imagePath = "file://"+ base + "/test.jpg";
String html = "<html><head></head><body><img src=\""+ imagePath + "\"></body></html>";
mWebView.loadDataWithBaseURL("", html, "text/html","utf-8", "");