diff --git a/Camera.js b/Camera.js index 57fd060..a6d8429 100644 --- a/Camera.js +++ b/Camera.js @@ -174,6 +174,7 @@ export default class Camera extends Component { options = { audio: props.captureAudio, barCodeTypes: props.barCodeTypes, + playSoundOnCapture: props.playSoundOnCapture, mode: props.captureMode, playSoundOnCapture: props.playSoundOnCapture, target: props.captureTarget, diff --git a/android/src/main/java/com/lwansbrough/RCTCamera/RCTCameraModule.java b/android/src/main/java/com/lwansbrough/RCTCamera/RCTCameraModule.java index bdd033b..de2acac 100644 --- a/android/src/main/java/com/lwansbrough/RCTCamera/RCTCameraModule.java +++ b/android/src/main/java/com/lwansbrough/RCTCamera/RCTCameraModule.java @@ -190,11 +190,11 @@ public class RCTCameraModule extends ReactContextBaseJavaModule { public void onPictureTaken(byte[] data, Camera camera) { camera.stopPreview(); camera.startPreview(); - Map response = new HashMap(); + WritableMap response = new WritableNativeMap(); switch (options.getInt("target")) { case RCT_CAMERA_CAPTURE_TARGET_MEMORY: String encoded = Base64.encodeToString(data, Base64.DEFAULT); - response.put("data", encoded); + response.putString("data", encoded); promise.resolve(response); break; case RCT_CAMERA_CAPTURE_TARGET_CAMERA_ROLL: @@ -204,7 +204,7 @@ public class RCTCameraModule extends ReactContextBaseJavaModule { _reactContext.getContentResolver(), bitmap, options.getString("title"), options.getString("description")); - response.put("path", url); + response.putString("path", url); promise.resolve(response); break; case RCT_CAMERA_CAPTURE_TARGET_DISK: @@ -223,7 +223,8 @@ public class RCTCameraModule extends ReactContextBaseJavaModule { } catch (IOException e) { promise.reject("Error accessing file: " + e.getMessage()); } - promise.resolve(Uri.fromFile(pictureFile).toString()); + response.putString("path", Uri.fromFile(pictureFile).toString()); + promise.resolve(response); break; case RCT_CAMERA_CAPTURE_TARGET_TEMP: File tempFile = getTempMediaFile(MEDIA_TYPE_IMAGE); @@ -242,7 +243,8 @@ public class RCTCameraModule extends ReactContextBaseJavaModule { } catch (IOException e) { promise.reject("Error accessing file: " + e.getMessage()); } - promise.resolve(Uri.fromFile(tempFile).toString()); + response.putString("path", Uri.fromFile(tempFile).toString()); + promise.resolve(response); break; } }