添加裁剪请求时模拟器摄像机崩溃



我正在使用以下方法调用相机拍照:

private void callExternalAppForImage() {
    mImageTakenUri = getContentResolver().insert(Media.EXTERNAL_CONTENT_URI, new ContentValues());
    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, mImageTakenUri);
    intent.putExtra("crop", "true");
    intent.putExtra("scale", "false");
    intent.putExtra("aspectX", 1);
    intent.putExtra("aspectY", 1);
    intent.putExtra("outputX", CONSTS_IMAGE_PARAMS.FULL_SIZE_SIDE);
    intent.putExtra("outputY", CONSTS_IMAGE_PARAMS.FULL_SIZE_SIDE);
    startActivityForResult(intent, REQUEST_CODE_TAKE_IMAGE);
}

它带有一个矩形边框,用于在拍摄后裁剪部分图像。

这在三星Galaxy 2上运行得很好,但是当我尝试在模拟器中运行它时,我在拍摄后没有得到裁剪框(我可以忍受),但返回代码是0而不是Activity。RESULT_OK(= 1)。此外,我得到的消息"不幸的是,相机已停止"在模拟器中。

我有两个问题:1. 裁切功能没有内置在相机意图?(注意,我没有使用com.android.camera.action.CROP意图)2. 知道它为什么会崩溃吗?

裁剪功能没有内置在相机意图?

在Play Store上有超过一百万的应用程序。其中数百个是可能响应ACTION_IMAGE_CAPTURE的相机应用程序。除此之外,Android设备上还预装了数十款(如果不是数百款的话)相机应用。

不需要响应随机额外,你决定把ACTION_IMAGE_CAPTURE Intent。特别是,它们都不需要实现任何类型的裁剪功能。

如果你希望为你的用户提供图像裁剪功能,你可以自己编写,或者使用图像裁剪库。

知道为什么它会崩溃吗?

可能有一个bug

最新更新