0

写真を撮り、そのデータをアクティビティに渡すことで、新しいアクティビティを開始します。何らかの理由でアクティビティが開始されません。(または、時間がかかるかもしれません) 次のように:

        cameraResult = new Intent(Activity.this, ResultActivity.class);

        final Camera.PictureCallback cameraSavePictureCallback = new Camera.PictureCallback() {

        @Override
        public void onPictureTaken(byte[] data, Camera camera) {
            // TODO Auto-generated method stub
            cameraResult.putExtra("PictureData", data);
            cameraResult.putExtra("size", "10cm");
            startActivity(cameraResult);
        }
    };

    final ShutterCallback myShutterCallback = new ShutterCallback() {

        @Override
        public void onShutter() {
            // TODO Auto-generated method stub

        }
    };

    final Camera.PictureCallback myPictureCallback_RAW = new Camera.PictureCallback() {

        @Override
        public void onPictureTaken(byte[] arg0, Camera arg1) {
            // TODO Auto-generated method stub

        }
    };

    // Add a listener to the Capture button
    Button captureButton = (Button) findViewById(id.button_capture);
    captureButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            // get an image from the camera
            camera.takePicture(myShutterCallback, myPictureCallback_RAW, cameraSavePictureCallback);                
        }
    });

新しいアクティビティにブレークポイントがあり、それが得られないため、問題はアクティビティにありません。

誰かが間違っている可能性があることを教えてもらえますか?これが新しい画面に画像を表示する適切な方法であるかどうかを教えてください。

EDIT1: これは、まったく黒くない写真を撮ったときにのみ発生することを忘れていました. つまり、レンズを覆って写真を撮れば、くっつかない

EDIT2 : logcat にエラーがあります

04-13 14:09:34.777: ERROR/JavaBinder(13009): !!! FAILED BINDER TRANSACTION !!!
4

1 に答える 1

0

おい、
最終版に変更 Camera.PictureCallback cameraSavePictureCallback = new Camera.PictureCallback() {

    @Override
    public void onPictureTaken(byte[] data, Camera camera) {
        // TODO Auto-generated method stub
        cameraResult = new Intent(Activity.this, ResultActivity.class);
        cameraResult.putExtra("PictureData", data);
        cameraResult.putExtra("size", "10cm");
        startActivity(cameraResult);
    }
};
于 2012-04-13T10:59:01.540 に答える