Android 调用系统打开相机,打开相册获取图片路径
生活随笔
收集整理的這篇文章主要介紹了
Android 调用系统打开相机,打开相册获取图片路径
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
我們?cè)陂_發(fā)中經(jīng)常遇到一些功能需要調(diào)取系統(tǒng)相機(jī)拍照獲取圖片,或者有的時(shí)候直接打開圖庫獲取圖片,那我們?cè)趺传@取呢,今天分享下,
第一步,打開相機(jī)
public static final int CAMERA = 1025;// 拍照的請(qǐng)求碼public static final int ALBUM = 1026;// 選擇圖片的請(qǐng)求碼 /** 設(shè)置從相機(jī)獲取圖片,返回圖片路徑*/public static String getImgFromCamra(Context context) {String state = Environment.getExternalStorageState();File mFolder;String mImgName;// 先檢測(cè)是不是有內(nèi)存卡。if (state.equals(Environment.MEDIA_MOUNTED)) {mFolder = new File(Environment.getExternalStorageDirectory(),"bCache");// 判斷手機(jī)中有沒有這個(gè)文件夾,沒有就新建。if (!mFolder.exists()) {mFolder.mkdirs();}// 自定義圖片名字,這里是以毫秒數(shù)作為圖片名。mImgName = System.currentTimeMillis() + ".jpg";Uri uri = Uri.fromFile(new File(mFolder, mImgName));// 調(diào)用系統(tǒng)拍照功能。打開箱機(jī)Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);context.startActivityForResult(intent, CAMERA);return mFolder + File.separator + mImgName;} else {Toast.makeText(context, "未檢測(cè)到SD卡", Toast.LENGTH_SHORT).show();return null;}}第二步,打開相冊(cè)
/** 設(shè)置從本地相冊(cè)獲取圖片*/public static void getImgFromAlbum(Context context) {// 調(diào)用本地圖庫。Intent intent = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);context.startActivityForResult(intent, ALBUM);}以上兩步我們就是打開系統(tǒng)的相機(jī)和相冊(cè),打開之后拍照成功,或者選中文件之后怎么接收呢,請(qǐng)看以下:
第三步 調(diào)用,獲取回調(diào)地址
@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.bt_photograph_phone:// 從手機(jī)選擇UtilView.getImgFromAlbum(PhotoGraph.this);break;case R.id.bt_photograph_paizhao:// 拍照photoLocalPath = UtilView.getImgFromCamra(PhotoGraph.this);break;}}@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {switch (requestCode) {case CAMERA:// 拍照if (resultCode == RESULT_OK ) {// 已經(jīng)獲取到圖片路徑了//photoLocalPath即為路徑 已經(jīng)獲取到}break;case ALBUM:// 圖庫選擇if (resultCode == RESULT_OK && data != null) {// 獲取本地相冊(cè)圖片。Uri uri = data.getData();}break;}}注:以上是但圖片,多圖片選擇請(qǐng)點(diǎn)擊下方
1.多圖片選擇 請(qǐng)點(diǎn)擊使用Album框架
2.多圖片選擇 請(qǐng)點(diǎn)擊使用PictureSelector框架框架
以上就是我們的使用方法,使用起來還是很簡(jiǎn)單的,小伙伴們?nèi)缬胁幻靼椎牡胤?#xff0c;或者是寫的不好的地方,歡迎留言
總結(jié)
以上是生活随笔為你收集整理的Android 调用系统打开相机,打开相册获取图片路径的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 搭建wiki知识库
- 下一篇: Android 多进程同时打开相机