java - Intent 为空

标签 java android android-studio camera onactivityresult

我从 Android 开发者页面复制了代码。 我在这里读了很多关于 onActivityResult 未触发的帖子。这些场景都不适合我。

 @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == REQUEST_TAKE_PHOTO && resultCode == RESULT_OK) {
        Bundle extras = data.getExtras();
        Bitmap imageBitmap = (Bitmap) extras.get("data");
        mImageView = (ImageView)findViewById(R.id.imageView);
        mImageView.setImageBitmap(imageBitmap);
    }
}
static final int REQUEST_TAKE_PHOTO = 1;

private void dispatchTakePictureIntent() {
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    if (takePictureIntent.resolveActivity(getPackageManager()) != null) {
        File photoFile = null;
        try {
            photoFile = createImageFile();
        } catch (IOException ex) {
        }
        if (photoFile != null) {
            Uri photoURI = Uri.fromFile(photoFile);
            takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI);
            startActivityForResult(takePictureIntent, REQUEST_TAKE_PHOTO);
        }
    }

最佳答案

当我写这个时;

takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, photoURI);

onActivityResult() 的 Intent 返回 null。所以,实际上并不是 onActivityResult() 没有被调用。是关于onActivityResult中传入的intent返回null。

所以,我刚刚删除了 putExtra() 方法,现在工作正常了。

关于java - Intent 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40864070/

相关文章:

java - 无法向所有客户端发送消息

java - 检查java中map的每个键是否为空检查

android - 启用 WiFi 热点的设备上的服务器和客户端

android - 如何在亚马逊 ec2 上运行安卓模拟器?

java - 排序行为不同?

java - 检查HashMap中的键是否存在于句子中

android - 如何在 Android 上保存和比较 2 个指纹

java - 联系许可服务器

java - Android Studio 中的 "import"字符串

android - api高于21的应用程序未安装错误