java - IMAGE_CAPTURE Intent 永远不会返回到 onActivityResult(int, int, Intent);

标签 java android

我像这样启动一个IMAGE_CAPTURE Intent,我的 Activity 的onActivityResult() 被调用:

Intent i = new Intent (android.provider.MediaStore.ACTION_IMAGE_CAPTURE, null);
i.putExtra("return-data", true);
startActivityForResult(i, PICK_ICON_FROM_CAMERA_ID);

但是,如果我这样启动我的 Intent,Capture Image Intent 确实会被调用,但我的 Activity 的 onActivityResult() 永远不会被调用:

Intent i = new Intent (android.provider.MediaStore.ACTION_IMAGE_CAPTURE, null);
i.putExtra(MediaStore.EXTRA_OUTPUT, Uri.parse("file:/" + "MyTestFile"));
i.putExtra("outputFormat",    Bitmap.CompressFormat.PNG.name());
startActivityForResult(i, PICK_ICON_FROM_CAMERA_ID);

你能告诉我如何让第 2 个nd 案例工作吗?

最佳答案

我认为“file:/MyTestFile”是一个不正确的 uri。尝试这样的事情:

File f=new File(Environment.getExternalStorageDirectory(),  "MyTestFile");
intent.putExtra(MediaStore.EXTRA_OUTPUT,Uri.fromFile(f));

实际路径是“/sdcard/MyTestFile”。

关于java - IMAGE_CAPTURE Intent 永远不会返回到 onActivityResult(int, int, Intent);,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1051330/

相关文章:

android - 如何使通知灯在 android 上以 react-native 工作?

java - 在已经存在的 SharedPreference 值中更改数据类型

android - FFMPEG 图像到带有过渡效果的视频

android - 如果在两个相对布局之间生成另一​​个布局,则动态删除 marginetop 相对布局

java - 如何将 Java ICAP 编解码器与 Squid 一起使用

java - 如何在tomcat服务器上运行两个应用程序

java - Servlet 3.0 的构造函数依赖注入(inject)?

java - Linux下最大线程数

java - 如何保留父实体而不更新具有多对多关系的子实体?

android - 如何为手机和平板电脑设置不同的百分比