• 20169202 2016-2017-2《移动平台》第十二周学习总结


    获取图片

    在Android的开发过程中,我们可能会读取手机里面的照片或者通过相机拍摄获取照片,这是两种常用的获取图片的方式,在做项目过程中也会经常遇到,下面来介绍一下这两种获取方式..
    1.从本地相册获取照片:
    一般就是写出这个方法

    protected void getImageFromAlbum() {  
           Intent intent = new Intent(Intent.ACTION_PICK);  
           intent.setType("image/*");//相片类型  
           startActivityForResult(intent, REQUEST_CODE_PICK_IMAGE);  
       }  
    

    2.从照相机获取照片
    一般就是写出这个方法

           String state = Environment.getExternalStorageState();  
           if (state.equals(Environment.MEDIA_MOUNTED)) {  
               Intent getImageByCamera = new Intent("android.media.action.IMAGE_CAPTURE");     
               startActivityForResult(getImageByCamera, REQUEST_CODE_CAPTURE_CAMEIA);  
           }  
           else {  
               Toast.makeText(getApplicationContext(), "请确认已经插入SD卡", Toast.LENGTH_LONG).show();  
           }  
       }  
    

    写完这个方法后,一般我们还需要通过响应这个方法去获取图片

    @Override  
        protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
            if (requestCode == REQUEST_CODE_PICK_IMAGE) {             
                    Uri uri = data.getData();  
                    //to do find the path of pic  
                
            } else if (requestCode == REQUEST_CODE_CAPTURE_CAMEIA ) {             
            Uri uri = data.getData();  
                     //to do find the path of pic  
     } }  
    

    制作视频

    使用内建意图,如果你使用默认的Canera应用程序来制作视频,可以使用如下这些代码行来激活应用程序。

    int requestCode = ...;
    Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
    startActivityForResult(intent,requestCode);
    

    如果使用API处理而不是使用Camera来为一个应用程序提供视频制作功能,需要了解MediaRecorder的细节。
    android.media.MediaRecorder类可以用来记录视频和音频。要是用MediaRecorder来捕获视频,需要它的一个实例。
    成功调用setOutputFormat将MediaRecorder引导到DataSourceConfigured状态。 你只需要调用prepare准备MediaRecorder即可。
    要开始录制,请调用start方法。 它将保持记录,直到停止被叫或发生错误。 如果MediaRecorder的空间不足以存储,则可能会发生错误
    视频或超过指定的最大记录时间。一旦您停止MediaRecorder,它将恢复到初始状态。 你必须把它拿走通过前三个州再次录制另一个视频。

    声音录制

    在这里讨论的SoundMeter类来采样声音或噪音层级,您将使用MediaRecorder类来对声音或噪声进行采样levels.MediaRecorder用于录制音频和视频。 输出可以写成a文件和输入源可以轻松选择。 它也比较容易使用。 你从头开始实例化MediaRecorder类。
    MediaRecorder mediaRecorder = new MediaRecorder();
    然后,通过调用其setAudioSource,setVideoSource来配置实例,setOutputFormat,setAudioEncoder,setOutputFile或其他方法。 接下来准备
    MediaRecorder通过调用其准备方法:
    mediaRecorder.prepare();

    代码托管

    参考资料

    Android开发之获取相册照片和获取拍照照片
    手把手教你做视频播放器

  • 相关阅读:
    JavaScript-数学对象与定时器
    JavaScript(八)-字符串与数组
    嵌入式的笔试题目(1)
    更改登录使用的默认shell的方法
    查看当前Linux 命令行使用的shell 的方法
    启动引导程序 Bootloader
    Debian 系(Deepin, Ubuntu, Linuxmint等)包管理工具
    ubuntu 服务器 samba 局域网内 如何添加samba user
    win10 和 树莓派3b+ 处于同一wifi环境(同一网段), win10 无法ping 通 树莓派3b+
    数据结构概念
  • 原文地址:https://www.cnblogs.com/zhaohui801/p/6886273.html
Copyright © 2020-2023  润新知