判断权限参考:https://blog.csdn.net/qq_27400335/article/details/79412774

更详细博客:https://blog.csdn.net/qq_27400335/article/details/83819068

private String fileName;
/*** 视频* @param activity* @return*/
public String shootVideo(Activity activity){fileName=null;UUID uuid = UUID.randomUUID();fileName = uuid + ".mp4";//将拍摄的照片保存在一个指定好的文件下File dir= new File(Environment.getExternalStorageDirectory() + "/测试");if(!dir.exists()){dir.mkdirs();}File f = new File(dir, fileName);Uri u = Uri.fromFile(f);if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {//通过FileProvider创建一个content类型的Uriu = FileProvider.getUriForFile(activity, "自己在清单配置文件创建provider", f);}//调用系统相机Intent intentVideo = new Intent();if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {//添加这一句表示对目标应用临时授权该Uri所代表的文件intentVideo.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);}intentVideo.setAction(MediaStore.ACTION_VIDEO_CAPTURE);intentVideo.addCategory(Intent.CATEGORY_DEFAULT);//将拍照结果保存至photo_file的Uri中intentVideo.putExtra(MediaStore.EXTRA_OUTPUT, u);activity.startActivityForResult(intentVideo, 1002);return fileName;
}

//回调

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (resultCode == -1 && requestCode == 1002) {String path = Environment.getExternalStorageDirectory() + "/测试/" + fileName;if (!TextUtils.isEmpty(path)){
//MediaMetadataRetriever 的应用参考:https://www.cnblogs.com/CharlesGrant/p/5800250.htmlMediaMetadataRetriever media = new MediaMetadataRetriever();media.setDataSource(path);//获取视频时长 单位秒String duration = media.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);...下一步}}
}

Android调用系统拍摄视频相关推荐

  1. android 调用系统播放器

    今天,简单讲讲android如何调用手机自带的播放器. 昨天,从服务器下载一个AVI的视频,下载后需要进行播放,所以想调用系统自带的播放器.但是由于很少用到,所以自己当时不知道怎么写,于是在网上查找资 ...

  2. linux 短信功能,Android调用系统短信功能发送短信

    Android调用系统短信功能发送短信有两种方法: 第一种,设定发送的号码,和内容,界面没有联系人,群组组等按钮,如下图所示: 代码如下: Uri smsToUri = Uri.parse(" ...

  3. android 默认浏览器 视频播放 二维码,Android调用系统默认浏览器访问的方法

    一.启动android默认浏览器 这样子,android就可以调用起手机默认的浏览器访问. 二.指定相应的浏览器访问 1.指定android自带的浏览器访问 ( "com.android.b ...

  4. android系统应用程序,Android调用系统应用程序

    Android调用系统应用程序: 1.直接拨打电话: Intent callIntent = new Intent(Intent.ACTION_CALL, Uri .parse("tel:1 ...

  5. Android调用系统相机拍照并保存到指定位置

    Android调用系统相机拍照并保存到指定位置 @Click(R.id.btn_takePhoto)void onclick() {Intent intent = new Intent(MediaSt ...

  6. android安装自动打开网页,Android调用系统自带浏览器打开网页的实现方法

    Android调用系统自带浏览器打开网页的实现方法 在Android中可以调用自带的浏览器,或者指定一个浏览器来打开一个链接.只需要传入一个uri,可以是链接地址. 启动android默认浏览器 在A ...

  7. Android调用系统分享和指定app分享-微信朋友圈图文分享和qq分享

    Android调用系统分享和指定app分享-微信朋友圈图文分享和qq分享 标签: Android系统分享QQ分享朋友圈图文分享 2016-09-27 22:54 279人阅读 评论(0) 收藏 举报 ...

  8. Qt Android 调用系统文件管理

    1.了解 使用JNI扩展Qt应用 参考<Qt on Android核心编程>15章 源码https://download.csdn.net/download/dinosaurx/10149 ...

  9. Android 调用系统裁剪,适配11和12及手机

    前言:发现Android 调用系统裁剪时,在各Android 版本出现各种问题,踩了一堆坑,做一下总结,免得以后忘记 后面会有完整裁剪代码 1,一加手机报错 intent.putExtra(" ...

最新文章

  1. 刘宇与小白健康:一个理想主义者的互联网“众包”实践
  2. C#.net技术内幕04-集合
  3. 线程死锁 解决共享资源问题
  4. javascript脚本_使用脚本src属性将JavaScript链接到HTML
  5. humanize时间库使用及汉化
  6. 使用Logtail采集Kubernetes上挂载的NAS日志
  7. IDEA 启动时,报“淇℃伅”的字符
  8. SQL Server 日志数据库清理办法
  9. 分表分库解决方案(mycat,tidb,shardingjdbc)
  10. BlueViewer 地图加载分析(C#)
  11. ios 纯代码 图标排列
  12. unix下ODBC连接MySQL编程_通过unixODBC访问PostgreSQL数据库
  13. minio 文件服务器,5分钟解决SpringBoot集成minio文件服务器的过程
  14. 小学计算机英语,小学英语流利读电脑版
  15. 扫描全能王30元/月的OCR文字识别免费使用方法
  16. 使用flex让父盒子内子盒子自适应宽度
  17. 海康威视SDK登录失败,错误码为8
  18. 双离合档把上按钮作用_帕萨特档杆按钮作用是什么
  19. 《鱿鱼游戏》全球大火,奈飞却难借IP变现成为“大赢家”
  20. 电视机防近视预警系统c语言,预防近视、提升视力 TCL儿童电视亮相重庆

热门文章

  1. excel连Oracle
  2. A-Level经济真题(15)
  3. naxx Demo1_ZZQ_02.java
  4. 如何将html做成手机壁纸,如何运用html5 canvas将图片保存至手机本地的图库中?...
  5. mac系统-如何删除卸载程序的残留文件
  6. 浪潮信息联合宁盾发布统一身份管理联合解决方案 为数字化赋能
  7. RPC框架-hessian学习
  8. 玩转kotlin的作用域函数
  9. 请教,如何从file的fullname(string类型)获取file对象?
  10. jquery兄弟标签_jquery如何添加兄弟节点 不是子节点哦 O(∩_∩)O~