よくある実装サンプル。
- mCamera.autoFocus(new AutoFocusCallback() {
- @Override
- public void onAutoFocus(boolean success, Camera camera) {
- camera.takePicture(null, null, pictureCallback);
- }
- });
- private Camera.PictureCallback pictureCallback = new Camera.PictureCallback() {
- @Override
- public void onPictureTaken(byte[] data, Camera camera) {
- // save picture
- }
- };
4.0(ICS)以降では、nullにしているとシャッター音が鳴らなくなっているようです。
空実装のShutterCallbackを指定すると鳴るようになりました。
- mCamera.autoFocus(new AutoFocusCallback() {
- @Override
- public void onAutoFocus(boolean success, Camera camera) {
- camera.takePicture(shutterCallback, null, pictureCallback);
- }
- });
- private Camera.PictureCallback pictureCallback = new Camera.PictureCallback() {
- @Override
- public void onPictureTaken(byte[] data, Camera camera) {
- // save picture
- }
- };
- private Camera.ShutterCallback shutterCallback = new Camera.ShutterCallback() {
- @Override
- public void onShutter() {
- // NOP
- }
- };
GALAXY NEXUS SC-04D で試しましたが、端末依存とかあるのでしょうか。。。