Надеюсь, что это работает для вас.

ываю камеру по умолчанию из своей деятельности, а затем обрабатываю onActivityResult. Кажется, мой код отлично работает на LG Ally, у которого нет подтверждения при съемке. Однако, когда я запускаю то же самое приложение на Nexus S, оно запрашивает у меня «ОК», «Возврат» или «Отмена», прежде чем вернуться к своей деятельности. Хотя «Отмена» работает, возвращаясь к моей деятельности без сохранения изображения, «Ок», похоже, не оказывает никакого влияния, даже не возвращаясь к моей деятельности.

Мой код ниже:

private void captureImage() {

    String state = Environment.getExternalStorageState();
    if (Environment.MEDIA_MOUNTED.equals(state)) {
        File path = new File(Environment.getExternalStorageDirectory().getPath() + "/Images/" + (new UserContextAdapter(this)).getUser() + "/");
        path.mkdirs();
        File file = new File(path, "Image_Story_" + mRowId.toString() + ".jpg");

        newImageUri = Uri.fromFile(file);

        Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        intent.putExtra(MediaStore.EXTRA_OUTPUT, newImageUri);

        startActivityForResult(intent, CAPTURE_IMAGE);
    }

}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {

    switch (requestCode) {
    case CAPTURE_IMAGE:
        switch (resultCode ) {
        case 0:
            Log.i("CAPTURE", "Cancelled by User");
            break;
        case -1:
            mImageUri = newImageUri;
            setImageFromUri();
            }
    }

Ответы на вопрос(4)

Ваш ответ на вопрос