Я пытаюсь сделать загрузчик изображений Instagram в WebView, и я создал контекстное меню для загрузки любого изображения, долгое нажатие на изображение, но проблема в том, что файл загружается в формате .bin, а также его нет в загрузках папка. Пожалуйста, помогите !!!
// To save image from web view
@Override
public void onCreateContextMenu(ContextMenu menu,View v,ContextMenu.ContextMenuInfo menuInfo){
super.onCreateContextMenu(menu, v, menuInfo);
WebView myWebView = (WebView) findViewById(R.id.webview);
// Get the web view hit test result
final WebView.HitTestResult result = myWebView.getHitTestResult();
// If user long press on an image
if (result.getType() == WebView.HitTestResult.IMAGE_TYPE ||
result.getType() == WebView.HitTestResult.SRC_IMAGE_ANCHOR_TYPE) {
// Set the title for context menu
menu.setHeaderTitle("CONTEXT MENU");
// Add an item to the menu
menu.add(0, 1, 0, "Save Image")
.setOnMenuItemClickListener(new MenuItem.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
// Get the image url
String imgUrl = result.getExtra();
// If this is an image url then download it
if(URLUtil.isValidUrl(imgUrl)){
// Initialize a new download request
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(imgUrl));
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
DownloadManager downloadManager = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
downloadManager.enqueue(request);
Toast.makeText(insta.this,"image saved.",Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(insta.this,"Invalid image url.",Toast.LENGTH_SHORT).show();
}
return false;
}
});
}
}