Android:呼叫系統分享功能
阿新 • • 發佈:2019-01-02
示意程式碼:
/** * 呼叫系統的分享功能 * Created by admin on 15-4-13. */ public class ShareActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.share_layout); } //分享文字 public void shareText(View view) { Intent shareIntent = new Intent(); shareIntent.setAction(Intent.ACTION_SEND); shareIntent.putExtra(Intent.EXTRA_TEXT, "This is my Share text."); shareIntent.setType("text/plain"); //設定分享列表的標題,並且每次都顯示分享列表 startActivity(Intent.createChooser(shareIntent, "分享到")); } //分享單張圖片 public void shareSingleImage(View view) { String imagePath = Environment.getExternalStorageDirectory() + File.separator + "test.jpg"; //由檔案得到uri Uri imageUri = Uri.fromFile(new File(imagePath)); Log.d("share", "uri:" + imageUri); //輸出:file:///storage/emulated/0/test.jpg Intent shareIntent = new Intent(); shareIntent.setAction(Intent.ACTION_SEND); shareIntent.putExtra(Intent.EXTRA_STREAM, imageUri); shareIntent.setType("image/*"); startActivity(Intent.createChooser(shareIntent, "分享到")); } //分享多張圖片 public void shareMultipleImage(View view) { ArrayList<Uri> uriList = new ArrayList<>(); String path = Environment.getExternalStorageDirectory() + File.separator; uriList.add(Uri.fromFile(new File(path+"australia_1.jpg"))); uriList.add(Uri.fromFile(new File(path+"australia_2.jpg"))); uriList.add(Uri.fromFile(new File(path+"australia_3.jpg"))); Intent shareIntent = new Intent(); shareIntent.setAction(Intent.ACTION_SEND_MULTIPLE); shareIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uriList); shareIntent.setType("image/*"); startActivity(Intent.createChooser(shareIntent, "分享到")); } }
頁面效果: