-1

画像をキャプチャするコードを書いていますが、onPictureTaken メソッドが呼び出されません...どこが間違っていますか??

私のコードは

btnCapture.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            cam.takePicture(null, null, new TakeMyPicture());
        }
    });



   class TakeMyPicture implements PictureCallback
{

    @Override
    public void onPictureTaken(byte[] data, Camera camera) {
        imagebytearray=data;            
        Toast.makeText(getApplicationContext(), "Image Captured",5).show();
    }

}
4

1 に答える 1

0

http://developer.android.com/training/camera/photobasics.htmlから厳密に削除されました。

カメラの使用許可をリクエストする

<uses-feature android:name="android.hardware.camera" />

写真を撮る

private void dispatchTakePictureIntent(int actionCode) {
    Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(takePictureIntent, actionCode);
}

写真を保存する

storageDir = new File(
    Environment.getExternalStoragePublicDirectory(
        Environment.DIRECTORY_PICTURES
    ), 
    getAlbumName()
);

ファイルの名前を設定する

private File createImageFile() throws IOException {
    // Create an image file name
    String timeStamp = 
        new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
    String imageFileName = JPEG_FILE_PREFIX + timeStamp + "_";
    File image = File.createTempFile(
        imageFileName, 
        JPEG_FILE_SUFFIX, 
        getAlbumDir()
    );
    mCurrentPhotoPath = image.getAbsolutePath();
    return image;
}

Intent を介して位置情報をカメラ アプリに渡す

File f = createImageFile();
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f));
于 2013-07-20T19:23:17.327 に答える