5

アプリでカメラのインテントを使用してカメラを起動していますが、インテントが起動されるとすぐに起動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カメラ インテントの起動後に呼び出されるのはなぜですか?

4

1 に答える 1

5

問題は、私のマニフェストでアクティビティが設定されていてsingleInstance、明らかにそれstartActivityForResultが気に入らないことでした

于 2013-05-16T18:38:02.897 に答える