1 Intent intent=new Intent();
2 /*打开相册*/
3 intent.setType("image/*");
4 // 兼容4.4以下及4.4以上
5 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
6 intent.setAction(Intent.ACTION_OPEN_DOCUMENT);
7 } else {
8 intent.setAction(Intent.ACTION_GET_CONTENT);
9 }
10 startActivityForResult(intent, ConstantValue.SELECT_PHOTO);
11 回调:
12 if (requestCode == ConstantValue.SELECT_PHOTO) {
13 Uri uri = data.getData();
14 String path = "";
15 if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
16 String wholeID = DocumentsContract.getDocumentId(uri);
17 String id = wholeID.split(":")[1];
18 String[] column = { MediaStore.Images.Media.DATA };
19 String sel = MediaStore.Images.Media._ID + "=?";
20 Cursor cursor = context.getContentResolver().query(
21 MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
22 column, sel, new String[] { id }, null);
23 int columnIndex = cursor.getColumnIndex(column[0]);
24 if (cursor.moveToFirst()) {
25 path = cursor.getString(columnIndex);
26 }
27 cursor.close();
28 } else {
29 String[] projection = { MediaStore.Images.Media.DATA };
30 Cursor cursor = context.getContentResolver().query(uri,
31 projection, null, null, null);
32 int column_index = cursor
33 .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
34 cursor.moveToFirst();
35 path = cursor.getString(column_index);
36 cursor.close();
37 }
38 uploadImage(path);
39
40
41 /*系统拍照保存到相应文件*/
42 if (!Environment.getExternalStorageState().equals(
43 Environment.MEDIA_MOUNTED)) {
44 ToastUtils.showToast(ChatActivity.this, "请插入内存卡");
45 } else {
46 Intent intent1 = new Intent(
47 "android.media.action.IMAGE_CAPTURE");
48 File temFile = new File(
49 Environment.getExternalStorageDirectory()
50 + "/tempimg.jpg");
51 if (temFile.exists())
52 temFile.delete();
53 intent1.putExtra(MediaStore.EXTRA_OUTPUT,
54 Uri.fromFile(temFile));
55 startActivityForResult(intent1, ConstantValue.Take_PHOTO);
56 }
57
58 /*拍视频*/
59 Intent intent1 = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
60 // intent1.putExtra(MediaStore.EXTRA_VIDEO_QUALITY,
61 // 1);
62 // 设置视频大小
63 intent1.putExtra(android.provider.MediaStore.EXTRA_SIZE_LIMIT,
64 768000);
65 // 设置视频时间 毫秒单位
66 intent1.putExtra(
67 android.provider.MediaStore.EXTRA_DURATION_LIMIT, 15000);
68 File temVdeioFile = new File(
69 Environment.getExternalStorageDirectory()
70 + "/tempvdeio.mp4");
71 if (temVdeioFile.exists())
72 temVdeioFile.delete();
73 intent1.putExtra(MediaStore.EXTRA_OUTPUT,
74 Uri.fromFile(temVdeioFile));
75 startActivityForResult(intent1, ConstantValue.Take_VEDIO);
/*打电话*/
Intent phoneIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:"
+ phone));
phoneIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(phoneIntent);