如何在不将图像保存到文件系统的情况下在WebView
中显示图片?
我尝试实现自定义ContentProvider
,但方法openFile
返回指向文件系统(或套接字)的ParcelFileDescriptor
。我的图片在文件系统中,但是以加密形式。
我也试过URL.setURLStreamHandlerFactory
,但在android java中它没用(因为自定义streamHandler可以在jvm中注册,不允许)。
我也尝试使用html代码“img src = \”data:image.gif; base64,R0lGODlhiAAkAMQAANOOk ......“,但是在嵌入式chrome中,它无效:(
请帮助
答案 0 :(得分:1)
Android中存在一个错误,您无法在类似的网页浏览中使用Base 64加载图片(最后一种方法)......
http://code.google.com/p/android/issues/detail?id=596
检查此链接可能是您可以尝试使用这种使用内容提供商的方法
http://blog.tourizo.com/2009/02/how-to-display-local-file-in-android.html
或
http://downloadandroid.info/2010/07/how-to-display-an-image-from-the-sdcard-in-webview/
答案 1 :(得分:1)
第一个链接显示了如何使用文件系统完成此操作,似乎无法解决peter所描述的问题。从我看到的,解决这个问题的唯一方法是使用MemoryFile:
Custom ContentProvider - openInputStream(), openOutputStream()
但规格不是最终的,并未在所有系统上实施。
你找到了更好的方法吗?有办法吗?有没有办法从webview中读取光标?