• Android 7.0 照相 FileUriExposedException


              vFile = new File("/xxx/" + System.currentTimeMillis() + ".jpg");
                    if (!vFile.exists()) {
                        File vDirPath = vFile.getParentFile();
                        vDirPath.mkdirs();
                    }
                    Uri uri = Uri.fromFile(vFile);
    //                Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    //                intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
    
                    //Android N :FileUriExposedException solved
                    ContentValues contentValues = new ContentValues(1);
                    contentValues.put(MediaStore.Images.Media.DATA, vFile.getAbsolutePath());
                    Uri uri1 = UserInfoActivity.this.getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,contentValues);
    
                    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                    intent.putExtra(MediaStore.EXTRA_OUTPUT, uri1);

    使用ContentProvider传Uri,避免crush.

  • 相关阅读:
    Java 代理模式
    ReentrantLock 详解
    Java线程池详解
    ConcurrentHashMap 解读
    CountDownLatch/CyclicBarrie用法记录
    微信接入笔记记录
    iOS设计模式
    iOS设计模式
    iOS设计模式
    iOS设计模式
  • 原文地址:https://www.cnblogs.com/seemann/p/6496676.html
Copyright © 2020-2023  润新知