次のコードを使用して、webviewにpdfファイルをロードしています
try {
imageByteArray =loadFile(Environment.getExternalStorageDirectory().getAbsolutePath()+"/sample.pdf");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
webview = (WebView)findViewById(R.id.webView1);
String image64 = Base64.encodeToString(imageByteArray, Base64.DEFAULT);
String imgTag = "<img src=\"data:image/jpeg;base64," + image64 + "\" />" ;
webview.getSettings().setBuiltInZoomControls(true);
webview.setInitialScale(30);
WebSettings webSettings = webview.getSettings();
webSettings.setUseWideViewPort(true);
webview.loadData(imgTag, "text/html", "utf-8");
しかし、バイトコードを文字列に変換中にメモリ不足の例外が発生しました
質問 :
1.大きなバイトコードを文字列型にロードするに
はどうすればよいですか 2. または、他のデータ型を使用して WebView にバイト配列を表示できますか?
この行を参照し
"<imgsrc=\"data:image/jpeg;base64," + image64 + "\" />"
て、文字列 image64 を指定する必要があります。または、利用可能な代替手段はありますか?