0
私はアンドロイドプログラムを書いて、プレビューなしで写真を撮りました。私のプログラムは、ステップバイステップでそれをデバッグするとうまく動作します。しかし、実行モードで実行すると、プログラムは期待通りに動作しません。画像は保存されず、プログラムは終了できません。また、私の携帯電話を再起動しない限り、他のAndroidアプリケーション(カメラ、ビデオカメラなど)でカメラを使用することはできません。誰もがこの問題について考えていますか?ランタイムエラーですが、ステップバイステップのデバッグはうまく動作します
ERROR/Adreno200-ES20(130): rb verson is SBA #24
ERROR/mm-camera(130): prepare snapshot: Aec not settle
ERROR/CameraService(130): mHardware->setOverlay() failed with status -2147483648
ERROR/mm-camera(130): camera_issue_command: get_picture error (Connection timed out): length 36, status 0 FD: 20 1
ERROR/QualcommCameraHardware3D(130): getPicture: CAMERA_OPS_GET_PICTURE ioctl failed!
ERROR/NotificationService(292): adbEnabled = false
ERROR/NotificationService(292): adbEnabled = true
:ザ・はlogcatことで、エラーを報告し
SurfaceView view = new SurfaceView(this);
mCamera = Camera.open();
Camera.Parameters p = mCamera.getParameters();
p.setPictureFormat(PixelFormat.JPEG);
mCamera.setParameters(p);
try {
mCamera.setPreviewDisplay(view.getHolder());
mCamera.startPreview();
mCamera.takePicture(null, null, mPictureCallback);
mCamera.stopPreview();
mCamera.unlock();
mCamera.release();
} catch (Exception e) {
mCamera.stopPreview();
mCamera.release();
e.printStackTrace();
}
コールバック関数
Camera.PictureCallback mPictureCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] imageData, Camera c) {
if (imageData != null) {
StoreByteImage(mContext, imageData, 50,
"ImageName");
finish();
}
}
};
}
次のように写真や記録されたエラーを取るためのコードは次のとおりです。
コード写真を撮るために
誰でも提案できますか?事前にありがとう
これは機能しません。写真は撮影されずにSDカードに保存されます。また、カメラのプレビューモードも開始されます。 – hanqiang
これはプレビューが表示された場合、私はいつ投稿したかわからなかった、私はそう思います。私はこのコードが写真を撮るために働いていることを知っています(電話機とエミュレータ上のテスト済みの実装です)。エミュレータまたは実際のデバイスを使用していますか? –
私はHTC感覚を使用します。 – hanqiang