链接到问题底部的解决方案/解决方法
我使用Android tutorial编写代码,通过意图打开nexus 7相机并拍照。除非我从
更改了文件对象初始化代码,否则它无法正常工作 File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES), "MyCameraApp");
到
File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES)
+ File.separator
+"MyCameraApp");
,当调用intent.getData()
时,onActivityResult
仍然为空。回到手头的问题:我可以在平板电脑上看到保存的图像浏览,但是当我通过USB在PC上浏览时却看不到。
我做错了什么?我认为使用getExternalStoragePublicDirectory
制作的文件是完全可访问的。我的代码可能还有其他问题吗?我是否需要以某种方式“告诉”相机应用程序将其保存为MODE_WORLD_READABLE
或其他内容?
花费数小时和数小时试图使其正常工作 - 任何帮助都将不胜感激!
我可以发布我的其余代码,如果它有帮助 - 它几乎与Android tutorial相同。
编辑:这是由nexus 7和4的已知问题引起的。请参阅解决方案的第二个链接
Saving files on external storage on Nexus 7 and retrieving from PC
答案 0 :(得分:0)
我做类似的事情:
File photo = new File(Environment.getExternalStorageDirectory(),
"filename.jpg");
mImageUri = Uri.fromFile(photo);
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE)
.putExtra(MediaStore.EXTRA_OUTPUT, mImageUri);
startActivityForResult(intent, REQUEST_CODE_TAKE_PHOTO);
从终端(或cmd)获取并保存照片电话后:
adb pull /mnt/storage/sdcard/filename.jpg c:\ folder
从c:\文件夹中获取结果照片。您可以使用日志或调试器来监控设备上的mImageUri地址。
PS:不要忘记权限about permissions