incubator-callback-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From shaz...@apache.org
Subject ios commit: Fixes CB-906 - Hardware mute button doesn't effect Media API playback
Date Mon, 18 Jun 2012 22:32:28 GMT
Updated Branches:
  refs/heads/master f97d46166 -> b3177d223


Fixes CB-906 - Hardware mute button doesn't effect Media API playback


Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-ios/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-ios/commit/b3177d22
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-ios/tree/b3177d22
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-ios/diff/b3177d22

Branch: refs/heads/master
Commit: b3177d223dfd10245e7021cdd06901476a351415
Parents: f97d461
Author: Shazron Abdullah <shazron@apache.org>
Authored: Mon Jun 18 15:32:20 2012 -0700
Committer: Shazron Abdullah <shazron@apache.org>
Committed: Mon Jun 18 15:32:20 2012 -0700

----------------------------------------------------------------------
 CordovaLib/Classes/CDVSound.m |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cordova-ios/blob/b3177d22/CordovaLib/Classes/CDVSound.m
----------------------------------------------------------------------
diff --git a/CordovaLib/Classes/CDVSound.m b/CordovaLib/Classes/CDVSound.m
index 706ae30..ce2c3d0 100644
--- a/CordovaLib/Classes/CDVSound.m
+++ b/CordovaLib/Classes/CDVSound.m
@@ -177,7 +177,14 @@
             // get the audioSession and set the category to allow Playing when device is
locked or ring/silent switch engaged
             if ([self hasAudioSession]) {
                 NSError* err = nil;
-                [self.avSession setCategory:AVAudioSessionCategoryPlayback error:nil];
+                NSNumber* playAudioWhenScreenIsLocked = [options objectForKey:@"playAudioWhenScreenIsLocked"];
+                BOOL bPlayAudioWhenScreenIsLocked = YES;
+                if (playAudioWhenScreenIsLocked != nil) { 
+                    bPlayAudioWhenScreenIsLocked = [playAudioWhenScreenIsLocked boolValue];
+                }
+                
+                NSString* sessionCategory = bPlayAudioWhenScreenIsLocked? AVAudioSessionCategoryPlayback
: AVAudioSessionCategorySoloAmbient;
+                [self.avSession setCategory:sessionCategory error:&err];
                 if (![self.avSession  setActive: YES error: &err]){
                     // other audio with higher priority that does not allow mixing could
cause this to fail
                     NSLog(@"Unable to play audio: %@", [err localizedFailureReason]);


Mime
View raw message