美文网首页
权限问题

权限问题

作者: GrayZhang | 来源:发表于2018-06-08 16:20 被阅读0次

android7.0以上手机摄像头,SD卡 访问

1、 在AndroidManifest.xml 设置 provider

<provider>

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

        android:authorities="com.wondersgroup.smartcampus.teacher.fileprovider"

        android:exported="false"

        android:grantUriPermissions="true">

            android:name="android.support.FILE_PROVIDER_PATHS"

            android:resource="@xml/file_paths" />

</provider>

2、在res文件夹下的xml文件夹下添加file_paths文件

<paths>

<!--第一个参数随便写,第二个参数是 对那个目录下面的文件进行分装呢,如果什么都不写就代表是sd 卡下面-->

<external-path name="my_images" path="smartCampus/images"/>

</paths>

3、使用

录制视频

captureMediaFile 保存地址

limit_time  录制时间

fileprovider 包名+“.fileprovider”

public static IntentcreateCaptureMediaIntent(File captureMediaFile, long limit_time, Context context, String fileprovider) {

Uri uri =null;

        // 7.0 中的处理

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

//FileProvider 将文件进行分装, 然后供外部应用(相机)访问提高了当前应用的安全性

            uri = FileProvider.getUriForFile(context, fileprovider, captureMediaFile);//通过FileProvider 来获取本地图片文件

        }else {

uri = Uri.fromFile(captureMediaFile);

        }

Intent intent =new Intent();

        intent.setAction("android.media.action.VIDEO_CAPTURE");

        intent.addCategory("android.intent.category.DEFAULT");

        // 保存录像到指定的路径

        intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);

        intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, limit_time);

        return intent;

    }

拍照

public static IntentcreateCaptureImageIntent(File captureImageFile, Context context, String fileprovider) {

Uri uri =null;

    // 7.0 中的处理

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

//FileProvider 将文件进行分装, 然后供外部应用(相机)访问提高了当前应用的安全性

        uri = FileProvider.getUriForFile(context, fileprovider, captureImageFile);//通过FileProvider 来获取本地图片文件

    }else {

uri = Uri.fromFile(captureImageFile);

    }

Intent intent =new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

    intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);

    return intent;

}

   

相关文章

  • Permission denied error

    go get 后出现权限问题 文件权限问题没有权限写入按 sudo 方式运行命令 git 权限问题没有权...

  • gem install bundler 的时间报错

    权限问题,修改权限安装路径 解决问题

  • 技巧~~

    sudo linux下解决权限问题: w ! sudo tee % 保存权限问题

  • 权限问题

    android7.0以上手机摄像头,SD卡 访问 1、 在AndroidManifest.xml 设置 provi...

  • 权限问题

    在创建新项目的时候,遇到 需要加sudo 需要输入密码,电脑登录密码,但是这样做之后,创建的文件是只读的,无法写入...

  • 权限问题

    Android6.0动态权限申请步骤以及需要注意的一些坑:http://www.jianshu.com/p/a51...

  • 权限问题

    关于Android的权限问题一直都是一知半解,而且最近有一个关于权限的需求,因此想着借这个机会自己整理一下相关的东...

  • 权限问题

    Win键+R(就是开始-运行),弹出的输入框输入gpedit.msc回车。将绿色圈中设置为禁用,然后重启

  • gitlab CI/CD 相关问题

    问题一 : token位置 解决: 问题二: 操作权限问题 有些操作需要权限, 解决: 问题三: .gitlab-...

  • iOS开发判断权限问题

    总结了下,自己项目里面使用到权限问题,如果有问题希望大家多交流指正 关于定位权限 关于使用相机权限 关于推送权限 ...

网友评论

      本文标题:权限问题

      本文链接:https://www.haomeiwen.com/subject/nyuroxtx.html