1、在AndroidManifest.xml中添加如下代码

tools:ignore="ProtectedPermissions" />

android:authorities="${applicationId}.provider"

android:name="android.support.v4.content.FileProvider"

android:exported="false"

android:grantUriPermissions="true">

android:resource="@xml/provider_paths">

2、在res目录下新建一个xml文件夹,并且新建一个provider_paths的xml文件

3、主文件中打开相机

Intent intent=new Intent(MediaStore.ACTION_VIDEO_CAPTURE);

try {

//fileUri=Uri.fromFile(createMediaFile());如果这样写会报错

fileUri= FileProvider.getUriForFile(CameraVideoActivity.this,getApplicationContext().getPackageName() + ".provider",createMediaFile());//这是正确的写法

} catch (IOException e) {

e.printStackTrace();

}

intent.putExtra(MediaStore.EXTRA_OUTPUT,fileUri);

intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY,1);

startActivityForResult(intent,1);

4、创建并保存视频的方法

private File createMediaFile() throws IOException {

if(Utils.checkSDCardAvaliable()) {

if ((Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED))) {

// 选择自己的文件夹

String path = Environment.getExternalStorageDirectory().getPath() + "/myvideo/";

// Constants.video_url 是一个常量,代表存放视频的文件夹

File mediaStorageDir = new File(path);

if (!mediaStorageDir.exists()) {

if (!mediaStorageDir.mkdirs()) {

Log.e("TAG", "文件夹创建失败");

return null;

}

}

// 文件根据当前的毫秒数给自己命名

String timeStamp = String.valueOf(System.currentTimeMillis());

timeStamp = timeStamp.substring(7);

String imageFileName = "V" + timeStamp;

String suffix = ".mp4";

File mediaFile = new File(mediaStorageDir + File.separator + imageFileName + suffix);

return mediaFile;

}

}

return null;

}

}

5、重写onActivityResult方法

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

if(requestCode==1)

{

if(resultCode==RESULT_OK)

{

Toast.makeText(this, "Video saved to:\n" +

data.getData(), Toast.LENGTH_LONG).show();

vv_play.setVideoURI(fileUri);

vv_play.requestFocus();

}

}

}

6、DDMS截图

android系统相机自动录像,android 调用系统相机录像并保存相关推荐

  1. [免费专栏] Android安全之Android奇淫run-as命令,调用系统受UID限制的API

    也许每个人出生的时候都以为这世界都是为他一个人而存在的,当他发现自己错的时候,他便开始长大 少走了弯路,也就错过了风景,无论如何,感谢经历 转移发布平台通知:将不再在CSDN博客发布新文章,敬请移步知 ...

  2. 关于Android 4.4(华为)调用系统相机问题

    最近使用测试机(华为,4.4系统)调用系统相机进行拍照时,点击拍照完成,手机又反回了拍照页面,此时应该setResult上一个页面,但是上一个页面的onActivityResult没有被调用,大概有些 ...

  3. android自定义发彩信实现(不调用系统发彩信界面)

    最近几天,因为项目需要,发彩信界面不再是调用系统的界面,即不跳转到短信界面,这个功能起初感觉应该很简单,但是真正做起来后,发现其实没有想象中那么简单,刚做完项目,趁头脑清晰,先把代码写下来先: 这几天 ...

  4. Android客户端之“微服私访”App的系统学习(八)调用系统摄像头拍照并管理照片并使用Okhttp上传文件至后台

    纤云弄巧,飞星传恨,银汉迢迢暗度.金风玉露一相逢,便胜却.人间无数.柔情似水,佳期如梦,忍顾鹊桥归路.两情若是久长时,又岂在.朝朝暮暮.明天就是七夕了,在此吟诗一首,然而和我并木有什么关系,所以还是静 ...

  5. android 调用图片裁剪功能,Android图片裁剪,合成(调用系统裁剪功能)

    做照片相框 步骤就是跟美图秀秀一样,先截图,然后添加相框 在之前Bitmap.createBitmap那个文里,说过使用jpg图片会挡住底层图片,用画这种方法合成图片,没有问题. public cla ...

  6. html5 调用系统相册,iOS之H5调用系统相册相机浏览文件

    在我们iOS开发中大家遇到过H5和原生交互,需要上传文件,刚开始的思路肯定是在之前轻车熟路的js交互中原生方法获取文件之后上传,今天我们了解一个新的方法,其实苹果官方给我们提供了一个更简单的方法, H ...

  7. android如何设置自动补,Android Studio 中设置代码块自动补齐

    AS中很多提示键,并不如Eclipse中做的好,需要我们自己去自定义.这里以switch...case为例,讲解一下如何设置代码自动补全. 1.进入settings -->  Editor -- ...

  8. android目录icon,自动裁剪Android ICON并保存到对应路径脚本

    在给Android游戏或app打包时,经常会遇到有几十上百个渠道的问题.不同的渠道app的名字不一样,icon也可能不一样.程序员总是懒的,最烦手动去改来改去.因此用Python写了一个自动裁剪不同尺 ...

  9. android 进度条自动增长,Android 进度条自动前进效果的实现代码

    今天给大家分享进度条自动前进功能的实现,先给大家分享实现效果图,感觉不错可以参考实现代码. 效果如下图: 首先布局要设置进度条最大值: android:id="@+id/pro1" ...

  10. android 阅读器自动滚动,Android编程实现小说阅读器滑动效果的方法

    本文实例讲述了Android编程实现小说阅读器滑动效果的方法.分享给大家供大家参考,具体如下: 看过小说都知道小说阅读器翻页有好多种效果,比如仿真翻页,滑动翻页,等等.由于某种原因,突然想写一个简单点 ...

最新文章

  1. Git基本命令和GitFlow工作流
  2. matplotlib可视化基本散点图、在图像多个指定区域绘制方框、进行自定义色彩填充(Draw Multiple Rectangles)
  3. 如何使用ODBC搭配dsn链接数据库
  4. js 字符串插入_Vue.js 条件与循环
  5. 阿里第二代微服务强势崛起,你还敢往简历上写“精通”吗?
  6. 计算机组成原理r型指令logisim实现_大学本科计算机科学与技术专业知识体系
  7. 深入以太坊智能合约ABI
  8. 爬取百万github用户数据,查找谁才是python大牛?
  9. Cannot find class [***] for bean with name '***' defined in file[***]
  10. 创业邦:谈谈 To B业务的机会
  11. 帝豪gl车机系统降级_美好的陪伴、舒心的用车,帝豪GL,32000公里用车有感
  12. 六、DMSP/OLS夜间灯光数据之GDP空间化的反演
  13. HTML translate方法,HTML canvas translate()用法及代码示例
  14. 大数据背景下的智慧物流:物流行业解决方案
  15. 云计算的三国演义!华为云、阿里云、腾讯云B端市场策略全解读
  16. 商家分账使用场景流程
  17. URL采集器-关键词采集
  18. 什么是过拟合、欠拟合现象以及如何缓解?
  19. 截屏工具、录屏工具不能用?是因为这个!!
  20. 美通企业日报 | 科技和能源行业最受中国公众信任;英特尔携手大华发展智能视觉技术...

热门文章

  1. 静茹docker容器的几种方法_1-容器和docker基础知识
  2. python写入数据到excel_python实现查询的数据写入到excel
  3. 目前市场上主流服务器厂商,目前市场上流行的串口服务器有哪些功能
  4. laravel5.6 mysql_快速入门 |《Laravel 5.6 中文文档 5.6》| Laravel China 社区
  5. having和where可以同时使用吗_阴、阳离子聚丙烯酰胺可以同时混合溶解使用吗?...
  6. python人工智能入门优达视频_机器学习:优达教你搭建Python 环境的正确姿势
  7. 两列布局、三列适应布局、两列等高适应布局。
  8. java环境变量的配置和使用
  9. Ajax.BeginForm无法调用 ajaxOptions的js函数
  10. Redis-cluster集群【第一篇】:redis安装及redis数据类型