【发布时间】:2019-08-20 15:05:18
【问题描述】:
我有以下图片。
这是一个私有路径,因此需要一个有效的 cookie 来获取它。 所以我使用这段代码在我的 webView 中显示它:
CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(myWebView.getContext());
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
cookieManager.removeSessionCookie();
cookieManager.setCookie("http://example.com",cookie);
cookieSyncManager.sync();
String getcookie = cookieManager.getCookie("http://example.com");
MyLog.myLog("getcookie "+getcookie);
myWebView.setWebViewClient(new WebViewClient());
myWebView.getSettings().setJavaScriptEnabled(true);
myWebView.setWebChromeClient(new WebChromeClient());
myWebView.loadUrl("http://example.com/system/files/private/fd41dbdea705d275aa2f5cf09c33731732f82c6d11c1951c5faa570059d52911989001fce5870053c0deeed85c028def20b18502108ad8d5d329ad007f45778c.JPG");
它工作正常。我可以正确地看到图像。所以我猜cookie代码是有效的。
现在我需要在自定义 html 文件 (privateimage_test.html) 中显示图像:
.....
.....
<div>
<img src="http://example.com/system/files/private/fd41dbdea705d275aa2f5cf09c33731732f82c6d11c1951c5faa570059d52911989001fce5870053c0deeed85c028def20b18502108ad8d5d329ad007f45778c.JPG" style="width:100%">
</div>
.......
现在我的 java 代码除了最后一行是一样的:
myWebView.loadUrl("file:///android_asset/privateimage_test.html");
在这种情况下,我看不到我的图像。 如果我用我的 html 文件中的任何公共图像替换私有图像,它工作正常。所以我猜是cookie问题。
有什么帮助吗? 谢谢。
【问题讨论】:
标签: android image cookies webview setcookie