1

链接到问题底部的解决方案/解决方法

我使用Android 教程编写代码,通过意图打开 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 教程相同。

编辑:这是由 nexus 7 和 4 的已知问题引起的。请参阅第二个链接以获取解决方案

在 Nexus 7 上的外部存储上保存文件并从 PC 检索

Nexus 4 未通过 MTP 显示文件

4

1 回答 1

0

I do something similar like this:

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);

And after take and save photo call from terminal (or cmd):

adb pull /mnt/storage/sdcard/filename.jpg c:\folder

and get result photo from c:\folder. You can use Log or debugger to monitoring mImageUri address on your device.

PS: And dont forget permissions about permissions

于 2013-04-17T11:50:03.917 回答