溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Android中Glide實(shí)現(xiàn)超簡(jiǎn)單的圖片下載功能

發(fā)布時(shí)間:2020-09-09 09:00:43 來(lái)源:腳本之家 閱讀:575 作者:Code_KZ 欄目:移動(dòng)開(kāi)發(fā)

本文介紹了Glide實(shí)現(xiàn)超簡(jiǎn)單的圖片下載功能,具體步驟如下:

添加依賴(lài)

compile 'com.github.bumptech.glide:glide:3.7.0'

添加權(quán)限

 <uses-permission android:name="android.permission.INTERNET"/>
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

工具類(lèi)代碼

public class SDFileHelper {

  private Context context;

  public SDFileHelper() {
  }

  public SDFileHelper(Context context) {
    super();
    this.context = context;
  }

  //Glide保存圖片
  public void savePicture(final String fileName, String url){
    Glide.with(context).load(url).asBitmap().toBytes().into(new SimpleTarget<byte[]>() {
      @Override
      public void onResourceReady(byte[] bytes, GlideAnimation<? super byte[]> glideAnimation) {
        try {
          savaFileToSD(fileName,bytes);
        } catch (Exception e) {
          e.printStackTrace();
        }
      }
    });
  }
  //往SD卡寫(xiě)入文件的方法
  public void savaFileToSD(String filename, byte[] bytes) throws Exception {
    //如果手機(jī)已插入sd卡,且app具有讀寫(xiě)sd卡的權(quán)限
    if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
      String filePath = Environment.getExternalStorageDirectory().getCanonicalPath()+"/budejie";
      File dir1 = new File(filePath);
      if (!dir1.exists()){
        dir1.mkdirs();
      }
      filename = filePath+ "/" + filename;
      //這里就不要用openFileOutput了,那個(gè)是往手機(jī)內(nèi)存中寫(xiě)數(shù)據(jù)的
      FileOutputStream output = new FileOutputStream(filename);
      output.write(bytes);
      //將bytes寫(xiě)入到輸出流中
      output.close();
      //關(guān)閉輸出流
      Toast.makeText(context, "圖片已成功保存到"+filePath, Toast.LENGTH_SHORT).show();
    } else Toast.makeText(context, "SD卡不存在或者不可讀寫(xiě)", Toast.LENGTH_SHORT).show();
  }

}

然后再需要的地方調(diào)用

 SDFileHelper helper = new SDFileHelper(MainActivity.this);
 helper.savePicture("bg.jpg",url);

Android中Glide實(shí)現(xiàn)超簡(jiǎn)單的圖片下載功能

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI