java– 通过ClipData.Item.getUri暴露在app之外

java– 通过ClipData.Item.getUri暴露在app之外,第1张

概述我试图在Android文件系统中添加新功能后解决问题,但是我收到此错误:android.os.FileUriExposedException:file:///storage/emulated/0/MyApp/Camera_20180105_172234.jpgexposedbeyondappthroughClipData.Item.getUri()所以我希望有人可以帮我解决这个问题:)谢谢privat

我试图在Android文件系统中添加新功能后解决问题,但是我收到此错误:

androID.os.fileUrIExposedException: file:///storage/emulated/0/MyApp/Camera_20180105_172234.jpg exposed beyond app through ClipData.Item.getUri()

所以我希望有人可以帮我解决这个问题:)

谢谢

private Uri getTempuri() {    // Create an image file name    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");    String dt = sdf.format(new Date());    imagefile = null;    imagefile = new file(Environment.getExternalStorageDirectory()            + "/MyApp/", "Camera_" + dt + ".jpg");    AppLog.Log(            TAG,            "New Camera Image Path:- "                    + Environment.getExternalStorageDirectory()                    + "/MyApp/" + "Camera_" + dt + ".jpg");    file file = new file(Environment.getExternalStorageDirectory() + "/MyApp");    if (!file.exists()) {        file.mkdir();    }    imagePath = Environment.getExternalStorageDirectory() + "/MyApp/"            + "Camera_" + dt + ".jpg";    imageUri = Uri.fromfile(imagefile);    return imageUri;}

解决方法:

在开始相机或文件浏览之前添加以下代码块

    StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();    StrictMode.setVmPolicy(builder.build());

请参考推荐链接strict mode及其解释的所有用法和技术细节.

总结

以上是内存溢出为你收集整理的java – 通过ClipData.Item.getUri暴露在app之外全部内容,希望文章能够帮你解决java – 通过ClipData.Item.getUri暴露在app之外所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1103045.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存