2016-06-28 13 views
-2

ブルートゥース/クラウドストレージ/ wifi経由で画像ファイルを共有するためのこのコードが見つかりました。代わりにフォルダ全体をどのように共有するのですか?ここに私のコード - 利用Intent.ACTION_SEND_MULTIPLE代わりのIntent.ACTION_SENDインテントでフォルダを共有するには?

private void shareImage() { 
    Intent share = new Intent(Intent.ACTION_SEND); 

    // If you want to share a png image only, you can do: 
    // setType("image/png"); OR for jpeg: setType("image/jpeg"); 
    share.setType("image/*"); 

    // Make sure you put example png image named myImage.png in your 
    // directory 
    String imagePath = Environment.getExternalStorageDirectory() 
      + "/myImage.png"; 

    File imageFileToShare = new File(imagePath); 

    Uri uri = Uri.fromFile(imageFileToShare); 
    share.putExtra(Intent.EXTRA_STREAM, uri); 

    startActivity(Intent.createChooser(share, "Share Image!")); 
} 

答えて

1
Intent intent = new Intent(); 
intent.setAction(Intent.ACTION_SEND_MULTIPLE); 
intent.putExtra(Intent.EXTRA_SUBJECT, "Here are some files."); 
intent.setType("*/*"); /* allow any file type */ 

//Get all files in this particular location 
File[] filesToSend = new File("/sdcard/myDocs").listFiles(); 

ArrayList<Uri> files = new ArrayList<Uri>(); 
for (File file : filesToSend) { 
    Uri uri = Uri.fromFile(file); 
    files.add(uri); 
} 

intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, files); 
startActivity(intent); 
2

です。

Intent intent = new Intent(); 
intent.setAction(Intent.ACTION_SEND_MULTIPLE); 
intent.putExtra(Intent.EXTRA_SUBJECT, "Here are some files."); 
intent.setType("*/*"); /* allow any file type */ 

ArrayList<Uri> files = new ArrayList<Uri>();      
for(String path : filesToSend /* List of the files you want to send */) { 
    File file = new File(path); 
    Uri uri = Uri.fromFile(file); 
    files.add(uri); 
} 

intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, files); 
startActivity(intent); 
+0

回答が更新されました。私の答えは正しいです、そのようにマークしてください。 – IanS

+0

私はこのフォルダ 'sdcard/myDocs'を共有したい – Cassie

+0

どのように私はそのディレクトリを指していますか? – Cassie

関連する問題