温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Android随手记—拍照录像以及录音的代码怎么写

发布时间:2021-10-14 09:23:59 来源:亿速云 阅读:167 作者:柒染 栏目:编程语言

这篇文章将为大家详细讲解有关Android随手记—拍照录像以及录音的代码怎么写,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

package com.cons.dcg.collect; import java.io.File; import java.text.SimpleDateFormat; import java.util.*; import android.app.*; import android.content.Intent; import android.database.Cursor; import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; import android.os.Environment; import android.provider.MediaStore; import android.view.*; import android.widget.*; public class RecordActivity extends Activity implements OnClickListener {         private static final int RESULT_CAPTURE_IMAGE = 1;// 照相的requestCode         private static final int REQUEST_CODE_TAKE_VIDEO = 2;// 摄像的照相的requestCode         private static final int RESULT_CAPTURE_RECORDER_SOUND = 3;// 录音的requestCode                 private String strImgPath = "";// 照片文件绝对路径         private String strVideoPath = "";// 视频文件的绝对路径         private String strRecorderPath = "";// 录音文件的绝对路径         @Override         protected void onCreate(Bundle savedInstanceState) {                 super.onCreate(savedInstanceState);                 this.setContentView(R.layout.problem_report);         }         @Override         protected void onActivityResult(int requestCode, int resultCode, Intent data) {                 super.onActivityResult(requestCode, resultCode, data);                 switch (requestCode) {                 case RESULT_CAPTURE_IMAGE://拍照                         if (resultCode == RESULT_OK) {                                 Toast.makeText(this, strImgPath, Toast.LENGTH_SHORT).show();                         }                         break;                 case REQUEST_CODE_TAKE_VIDEO://拍摄视频                         if (resultCode == RESULT_OK) {                                 Uri uriVideo = data.getData();                                 Cursor cursor=this.getContentResolver().query(uriVideo, null, null, null, null);                                 if (cursor.moveToNext()) {                                         /** _data:文件的绝对路径 ,_display_name:文件名 */                                         strVideoPath = cursor.getString(cursor.getColumnIndex("_data"));                                         Toast.makeText(this, strVideoPath, Toast.LENGTH_SHORT).show();                                 }                         }                         break;                 case RESULT_CAPTURE_RECORDER_SOUND://录音                         if (resultCode == RESULT_OK) {                                 Uri uriRecorder = data.getData();                                 Cursor cursor=this.getContentResolver().query(uriRecorder, null, null, null, null);                                 if (cursor.moveToNext()) {                                         /** _data:文件的绝对路径 ,_display_name:文件名 */                                         strRecorderPath = cursor.getString(cursor.getColumnIndex("_data"));                                         Toast.makeText(this, strRecorderPath, Toast.LENGTH_SHORT).show();                                 }                         }                          break;                 }         }                         /**          * 照相功能          */         private void cameraMethod() {                 Intent imageCaptureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);                 strImgPath = Environment.getExternalStorageDirectory().toString() + "/CONSDCGMPIC/";//存放照片的文件夹                 String fileName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()) + ".jpg";//照片命名                 File out = new File(strImgPath);                 if (!out.exists()) {                         out.mkdirs();                 }                 out = new File(strImgPath, fileName);                 strImgPath = strImgPath + fileName;//该照片的绝对路径                 Uri uri = Uri.fromFile(out);                 imageCaptureIntent.putExtra(MediaStore.EXTRA_OUTPUT, uri);                 imageCaptureIntent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);                 startActivityForResult(imageCaptureIntent, RESULT_CAPTURE_IMAGE);         }         /**          * 拍摄视频          */         private void videoMethod() {                 Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);                 intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);                 startActivityForResult(intent, REQUEST_CODE_TAKE_VIDEO);         }         /**          * 录音功能          */         private void soundRecorderMethod() {                 Intent intent = new Intent(Intent.ACTION_GET_CONTENT);                 intent.setType("audio/amr");                 startActivityForResult(intent, RESULT_CAPTURE_RECORDER_SOUND);         }         /**          * 提示信息          * @param text          * @param duration          */         private void showToast(String text, int duration) {                 Toast.makeText(ProblemReport.this, text, duration).show();         } }

关于Android随手记—拍照录像以及录音的代码怎么写就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI