Фотосъемка по Intent на андроид - PullRequest
0 голосов
/ 29 декабря 2011

Я пытаюсь сделать фотографию с помощью Intent.
Мой код выглядит как this , и я не знаю, в чем проблема.
Когда я хочу получить свое приложениеначалось, я получаю сообщение об ошибке:

12-20 06:09:03.243: E/AndroidRuntime(1048): java.lang.RuntimeException: com.android.camera.CameraHardwareException: java.lang.RuntimeException: Fail to connect to camera service

Ответы [ 2 ]

0 голосов
/ 29 декабря 2011

Попробуйте это:

      try {


                    File root = new File(Environment.getExternalStorageDirectory()
                            + File.separator + "temp" + File.separator);
                    root.mkdirs();
                    File sdImageMainDirectory = new File(root, "myPicName.jpg");
                     Uri outputFileUri = Uri.fromFile(sdImageMainDirectory);
                    startCameraActivity();
                } catch (Exception e) {

                    Toast.makeText(this, "Error occured. Please try again later.",
                            Toast.LENGTH_SHORT).show();

                }
    protected void startCameraActivity() {



            Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
            cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
            startActivityForResult(cameraIntent, 101);


        }

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        if(requestCode==101 && resultCode==-1)
        {
            try
            {
            //   "/mnt/sdcard/temp/myPicName.jpg" is ur image file if u want to use it
            }
            catch(Exception ex)
            {



            }
        }
0 голосов
/ 29 декабря 2011

Намерение для фотографирования выглядит следующим образом:

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, 0);

Теперь в результате действия вы получите путь захвата изображения.

Надеюсь, это поможет вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...