Loading media/java/android/media/SoundPool.java +29 −0 Original line number Diff line number Diff line Loading @@ -133,6 +133,8 @@ public class SoundPool { private final IAppOpsService mAppOps; private final IAppOpsCallback mAppOpsCallback; private static IAudioService sService; /** * Constructor. Constructs a SoundPool object with the following * characteristics: Loading Loading @@ -492,7 +494,34 @@ public class SoundPool { } } private static IAudioService getService() { if (sService != null) { return sService; } IBinder b = ServiceManager.getService(Context.AUDIO_SERVICE); sService = IAudioService.Stub.asInterface(b); return sService; } private boolean isRestricted() { IAudioService service = getService(); boolean cameraSoundForced = false; try { cameraSoundForced = service.isCameraSoundForced(); } catch (RemoteException e) { Log.e(TAG, "Cannot access AudioService in isRestricted()"); } if (cameraSoundForced && ((mAttributes.getAllFlags() & AudioAttributes.FLAG_AUDIBILITY_ENFORCED) != 0) // FIXME: should also check usage when set properly by camera app // && (mAttributes.getUsage() == AudioAttributes.USAGE_ASSISTANCE_SONIFICATION) ) { return false; } if ((mAttributes.getAllFlags() & AudioAttributes.FLAG_BYPASS_INTERRUPTION_POLICY) != 0) { return false; } Loading Loading
media/java/android/media/SoundPool.java +29 −0 Original line number Diff line number Diff line Loading @@ -133,6 +133,8 @@ public class SoundPool { private final IAppOpsService mAppOps; private final IAppOpsCallback mAppOpsCallback; private static IAudioService sService; /** * Constructor. Constructs a SoundPool object with the following * characteristics: Loading Loading @@ -492,7 +494,34 @@ public class SoundPool { } } private static IAudioService getService() { if (sService != null) { return sService; } IBinder b = ServiceManager.getService(Context.AUDIO_SERVICE); sService = IAudioService.Stub.asInterface(b); return sService; } private boolean isRestricted() { IAudioService service = getService(); boolean cameraSoundForced = false; try { cameraSoundForced = service.isCameraSoundForced(); } catch (RemoteException e) { Log.e(TAG, "Cannot access AudioService in isRestricted()"); } if (cameraSoundForced && ((mAttributes.getAllFlags() & AudioAttributes.FLAG_AUDIBILITY_ENFORCED) != 0) // FIXME: should also check usage when set properly by camera app // && (mAttributes.getUsage() == AudioAttributes.USAGE_ASSISTANCE_SONIFICATION) ) { return false; } if ((mAttributes.getAllFlags() & AudioAttributes.FLAG_BYPASS_INTERRUPTION_POLICY) != 0) { return false; } Loading