ActivityResultLauncher是安卓官方推荐的用来替代startActivityForResult的新方式。通过它可以非常方便地调用系统Intent进行拍照,或是选取本地的文件。
本文共分为5个章节 :
一、定义ActivityResultLauncher
二、注册Launcher
三、调用系统Intent
四、使用FileProvider复制一份文件
五、使用系统应用打开各种类型的指定文件
randolph.carter.xu@gmail.com
28300098@qq.com
在需要调用系统Intent之前,我们需要定义所需的Launcher:
- protected ActivityResultLauncher activityResultLauncher;
- protected ActivityResultLauncher takePhotoLauncher;
- protected ActivityResultLauncher selectImageLauncher;
- protected ActivityResultLauncher selectFileLauncher;
此处我定义了4个不同的Launcher,分别用来处理普通的Intent跳转、拍照、选择相册中已有的图片和选择手机中的文件。
activityResultLauncher:处理普通的Intent跳转,并携带参数往返;
takePhotoLauncher:打开照相机进行拍照,并获得照片;
se