2017-06-01 120 views
-1

我正在嘗試共享GIF文件。我想通過任何社交網絡應用程序分享它,我有一個文件名的問題。我不知道如何獲取名稱文件。這是我的代碼:使用Glide共享文件

llsetwallpapers.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      // set as wallpapers 
      lt.setText("Please Wait ..."); 
      lt.setTranslationY(100); 
      lt.show(); 
      Glide.with(getApplicationContext()) 
        .load(url) 
        .asBitmap() 
        .diskCacheStrategy(DiskCacheStrategy.ALL) 
        .into(new SimpleTarget<Bitmap>() { 
         @Override 
         public void onResourceReady(Bitmap resource, GlideAnimation<?super Bitmap> glideAnimation) { 
          File file = new File file = new File(getApplicationContext().getExternalCacheDir() , namefile) 
          file.setReadable(true); 
          Uri uri = Uri.fromFile(file); 
          Intent shareIntent = new Intent(); 
          shareIntent.setAction(Intent.ACTION_SEND); 
          shareIntent.setType("image/gif"); 
          shareIntent.putExtra(Intent.EXTRA_STREAM, uri); 
          startActivity(Intent.createChooser(shareIntent, "Share with")); 
         } 
        }); 
     } 
    }); 

回答

0

你正在試圖解決的問題在github issues進行了討論,其中羅伯特·帕普已分享由滑翔下載的文件中提供的示例實現。

你的關鍵部分是獲得對File的參考。可與downloadOnly()做到:

 

    File file = Glide 
        .with(context) 
        .load(url) 
        .downloadOnly(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL) 
        .get() 
 

有一個File,你可以以共享的文件使用FileProvider API。