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

Android camera错误,无法传递结果ResultInfo

林冥夜
2023-03-14

我试着让我的相机为我的android应用程序工作,但我一直得到以下错误

02-07 22:30:48.217 131 97-13197/com.example.romsm.lap E/AndroidRuntime:致命异常:main java.lang.RuntimeException:将结果ResultInfo{who=null,request=1,result=-1,data=intent{act=inline-data dat=content://media/external/images/media/8557(有附加)}}传递到活动{com.example.romsm.lap/com.example.romsm.lap/treequestionsActivity}:er.run(zygoteinit.java:1187),在com.android.internal.os.zygoteinit.main(zygoteinit.java:1003),在dalvik.system.nativeStart.main(本机方法)

我已经尝试了我能在网上找到的一切,但似乎没有任何东西可以修复它。这是我的代码,在那里我做相机的东西。

btnPhoto.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
                   // File file = new File(...);
                    startActivityForResult(takePictureIntent, ACTIVITY_START_CAMERA);
                   // takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
                }
            }
        });



    }

而且

 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == ACTIVITY_START_CAMERA) {
            if (data != null && resultCode == RESULT_OK) {
                // Image captured and saved to file
                Bundle extras = data.getExtras();
                Bitmap imageBitmap = (Bitmap) extras.get("data");
                imageView.setImageBitmap(imageBitmap);
            } else {
                // User cancelled the image capture or
                // image capture failed, advise user

            }
        }
        super.onActivityResult(requestCode, resultCode, data);
    }

共有1个答案

马侯林
2023-03-14

这是我的代码使相机工作。你可以试试这个。

 private void activeTakePhoto() {
        Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode,
                                    Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode) {
            case REQUEST_IMAGE_CAPTURE:
                if (requestCode == RESULT_LOAD_IMAGE && resultCode == RESULT_OK & null != data) {

                Bitmap thumbnail = (Bitmap) data.getExtras().get("data");
                ByteArrayOutputStream bytes = new ByteArrayOutputStream();
                thumbnail.compress(Bitmap.CompressFormat.JPEG, 90, bytes);
                //to generate random file name
                String fileName = "tempimg.jpg";

                try {
                    photo = (Bitmap) data.getExtras().get("data");
                    //captured image set in imageview
                    imageView.setImageBitmap(photo);
                } catch (Exception e) {
                    e.printStackTrace();
                }
        }
    }
 类似资料:
  • 我试图从我的数据库中得到一些数据,但我不会得到正确的结果。 我的方法: 所以应该有一个确切的结果,但我从控制台得到的全部是:日期的范围是从今天(6月12日-2周) CEST 2012年Tue Jun 12 14:49:11 2012年东部时间5月30日星期三14:49:11

  • 我想将包含两个4x4矩阵的统一缓冲区对象传递给顶点着色器。我在C中声明了结构,如下所示: 在GLSL中: 但是,一旦我在UBO结构中声明了多个成员,一些对象就会由于错误的viewProjection矩阵而绘制错误。如果我注释掉PerRenderUBO结构和GLSL声明中的“projection”数据成员,所有内容都会正确渲染(尽管我甚至没有在着色器中使用投影) 这让我相信数据对齐肯定有问题。我已经

  • 问题内容: 我只需要这个不太了解的PHP错误的帮助: 致命错误:在第13行的/web/stud/openup/inactivatesession.php中无法通过引用传递参数2 这个错误是什么意思?如何解决此错误? 问题答案: 该错误意味着第二个参数应该是 对变量 的 引用 。 由于您不是递给 变量 而是 值0 的 整数 ,因此它会产生上述错误。 为了避免这种情况,请执行以下操作: 如果您想了解发

  • 我最近开始为一个学校项目与JPA和Hibernate合作,它基本上在数据库中存储大陆、国家和城市。 当尝试在实体上使用持久化方法时,我得到了标题中提到的错误。 我访问过的任何一个线程都解决了许多更复杂的问题,但对我的情况没有真正的帮助。我希望通过在这里发帖找到一些指导。 这是数据库创建脚本。这是一个PostgreSQL数据库。 基本上,countries表使用continents表的ID作为外键,

  • 问题内容: 根据Wolfram Mathematica: cos(50) = 0.6427876096865394 ; 但是这段Java代码: 给出 0.9649660284921133 。 有什么问题吗? 问题答案: 期望参数以弧度为单位。这将返回您需要的结果: