我发现一些Android OEM存储了由android系统摄像头(由OEM开发)在 DCIM 文件夹中捕获的图片,但其他人在 DCIM / Camera 中存储。
那么,有没有办法获得Android摄像头拍摄的真实路径存储图片?
答案 0 :(得分:0)
我不确定这是否是您想要的答案(或者您是否想要答案?),但这里是:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
imageFile = new File(
Environment
.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "goQuiz/profilePic.jpg"
);
Uri tempuri = Uri.fromFile(imageFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, tempuri);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
startActivityForResult(intent, 0);
myVar = imageFile.getAbsolutePath();
截至目前,myVar
存储了保存图片的完整路径。
基本上获取变量以保存file.getAbsolutePath()
。
答案 1 :(得分:0)
我想知道OEM自己开发的相机应用程序。
如果没有劫持人质并要求原始设备制造商交出这些信息,你就无法获得这些信息。毕竟:
您无法了解设备上预装的相机应用程序,或者即使有一个
您完全不知道OEM是否编写了相机应用程序,而不是从某个第三方获得许可
您无法知道该相机应用程序将在何处存储图像,因为该应用程序可以将图像存储在任何位置,可能通过用户提供的配置数据(例如,“让我们将相机链接到您的Dropbox帐户!”)
您甚至不知道相机是否会将图像存储在您可以访问的位置(例如,相机应用可以写入Android 4.4+上的可移动媒体,您的应用无法访问)
< / LI>