地址:
<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
在你的清單文件,否則源不能下載。
如果你想將其保存在SD卡,您需要另一個權限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
爲了保存它。
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
如果您想在將來獲取該文件。
,如果你想將其保存到外部目錄下,你可以試試這個:
public void setUpDirectory(String folderName,String source){
File directory = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+File.separator+folderName);
if(!directory.exists() && !directory.isDirectory()) {
directory.mkdirs();
}
URL imageurl = new URL(source);
Bitmap bitmap = BitmapFactory.decodeStream(imageurl.openConnection().getInputStream());
saveFile(directory,bitmap);
}
private void saveFile(File fileName,Bitmap bmp){
FileOutputStream outputStream = null;
try {
outputStream = new FileOutputStream(fileName);
bmp.compress(Bitmap.CompressFormat.PNG, 100, outputStream); // 100 will be ignored
} catch (Exception e) {
e.printStackTrace();
}
finally {
try {
if outputStream != null) {
outputStream .close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
你真的想保存到SD卡嗎?畢加索會下載,只要你想顯示的圖像,並將其存儲在應用程序緩存 – Stallion
好吧,但它爲什麼不工作?@Stallion – Sid
把你的相關完整的代碼比清單權限的單行還 – Stallion