android webview 加载内存卡里的照片
时间: 2023-07-21 12:18:21 浏览: 141
Android使用WebView从相册/拍照中添加图片
要在 Android WebView 中加载内存卡里的照片,可以按以下步骤操作:
1. 确保已经获取了读取内存卡权限:
```xml
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
```
2. 使用以下代码将照片转换为 base64 编码:
```java
File file = new File("/sdcard/photo.jpg");
FileInputStream fis = new FileInputStream(file);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int count;
while ((count = fis.read(buffer)) != -1) {
baos.write(buffer, 0, count);
}
String base64 = Base64.encodeToString(baos.toByteArray(), Base64.DEFAULT);
```
3. 在 WebView 中使用 data URL 加载 base64 编码的图片:
```java
String html = String.format("<img src='data:image/jpeg;base64,%s'/>", base64);
webView.loadDataWithBaseURL("file:///android_asset/", html, "text/html", "UTF-8", null);
```
这样就可以在 WebView 中加载内存卡里的照片了。
阅读全文