From 2dba5c84174cd4a2f3ddd66977a34c9e57a06277 Mon Sep 17 00:00:00 2001 From: Daichi Hirono Date: Mon, 25 Jun 2018 11:16:41 +0900 Subject: Stop invoke initAppOps in Camera default constructor. Camera default constructor does not create the underlying native camera object. Thus calling _enableShutterSound after the default constuctor causes application crash. Bug: 80498247 Test: Manually modify the code to return MODE_IGNORED for AppOpsService#checkAudioOperation() and to return false for CameraManager#supportsCamera2ApiLocked. Then start voice call in Hangouts. Change-Id: Id738c4d46a8e3625bc3b1142b11acac9cfb0b603 Merged-In: Id738c4d46a8e3625bc3b1142b11acac9cfb0b603 (cherry picked from commit cb63c640cdc8e95a76408a2e90048d9c0dee06de) --- core/java/android/hardware/Camera.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/core/java/android/hardware/Camera.java b/core/java/android/hardware/Camera.java index d8cdf60ad850..8e96f56e8cd3 100644 --- a/core/java/android/hardware/Camera.java +++ b/core/java/android/hardware/Camera.java @@ -575,9 +575,7 @@ public class Camera { /** * An empty Camera for testing purpose. */ - Camera() { - initAppOps(); - } + Camera() {} private void initAppOps() { IBinder b = ServiceManager.getService(Context.APP_OPS_SERVICE); -- cgit v1.2.3-59-g8ed1b