当前位置: 首页 > 知识库问答 >
问题:

一旦发送相机意图就调用onActivityResult

刘星火
2023-03-14

我正在使用相机意图启动应用程序中的相机,但一旦意图被激发,onActivityResult就被激发,我甚至还没有拍摄到一张照片。

当我拍摄一张照片时,选择它并返回到我的活动中,onActivityResult根本不会被调用

下面是我如何发射相机

PackageManager pm = getPackageManager();
    if (pm.hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
        Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

        File tempDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES),"Mobile Map");
        if (!tempDir.exists()) {
            if (!tempDir.mkdir()) {
                Toast.makeText(this,
                        "Please check SD card! Image shot is impossible!",
                        Toast.LENGTH_SHORT).show();
            }
        }

        String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss",Locale.US).format(new Date());
        File mediaFile = new File(tempDir.getPath() + File.separator+ "IMG_" + timeStamp + ".jpg");

        photoUri = Uri.fromFile(mediaFile);
        camera.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
        startActivityForResult(camera, CAMERA_REQUEST);
    } else {
        Toast.makeText(this,"This device does not have a rear facing camera",Toast.LENGTH_SHORT).show();
    }

为什么onActivityResult只在相机意图启动后调用?

共有1个答案

仲孙思源
2023-03-14

问题是,在我的清单中,我将活动设置为SingleInstance,而显然StartActivityForResult不喜欢这样

 类似资料:
  • 我正试着拍一张照片并把它保存到一个自定义的位置- onActivityResult()中的数据为空。我错过了什么?

  • 我有一个流星应用程序,正在使用电子邮件和密码包来处理基本的密码重置功能。 在本地计算机上,我将env变量设置为: 在对相关的gmail帐号进行了一些改动后(我不得不允许不太安全的应用程序),它起作用了。 我的生活环境是heroku,所以我在那里设置了env变量,使用: 然后确认它是使用设置的。但由于某种原因,当我尝试在生产环境中重置密码时,它会抛出以下错误: 调用方法“忘记密码”时出现异常错误:无

  • 问题内容: 我试图启动内置相机拍摄照片,该图片将具有由启动相机的活动指定的名称。(下面的代码) 相机返回时,直接转到。对此的任何解释和解决方案将不胜感激。 相机确实可以拍摄图像,我可以使用文件查看器在sdcard中看到它,但是它的名称是相机中的库存图像。如何获得该拍摄图像的名称作为活动提供的图像? 相机意图代码 活动结果代码 问题答案: 这两个问题可能相关,与您创建传递给相机的文件参考的方式有关。

  • 我正试图让我的应用程序为新的Android M权限更改做好准备,发现了一些奇怪的行为。我的应用程序使用相机意图机制,允许用户从相机中获得一张照片。但是在另一个活动中,需要使用具有camera权限的camera本身(因为库依赖项card.io需要这样做)。 这是我用来让用户用相机点击一张照片和/或选择一张图像的代码 我在活动中单击按钮时调用。当我没有相机权限在我的应用程序,它的工作很好,但与添加,我

  • 我正在尝试使用不同的应用程序附加图像,代码如下: 附加的图像是使用以下代码生成的: 但当我试图打开GMAIL与此意图,只有文本显示应用程序与错误:. 我错过了什么? 编辑 这是另一个解决方案:android。操作系统。FileUrieExposedException:文件。jpg通过ClipData曝光了app之外的内容。项目getUri()

  • 我有每个列表项的Listview和TakePicture按钮事件。我需要在OnActivityResult方法上发送位置并返回位置,以使用该位置将图像更新到列表项 我的代码是 在OnActivityResult函数中 与上面的代码一样,我正在使用本机ActionImageCapture事件,但无法在OnActivityResult函数中获得位置。 如何在OnActivityResult方法中获取数