IOS 6 中的音量检测
Posted
技术标签:
【中文标题】IOS 6 中的音量检测【英文标题】:Volume Detection In IOS 6 【发布时间】:2013-01-28 12:59:26 【问题描述】:我正在创建一个应用程序,当应用程序处于后台并且用户更改 iPhone 应用程序中的音量时,应该会知道它。 有什么想法或线索吗?
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
//self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
AudiosessionInitialize(NULL, NULL, NULL, NULL);
AudioSessionSetActive(true);
[[NSNotificationCenter defaultCenter]
addObserver:self
selector:@selector(volumeChanged:)
name:@"AVSystemController_SystemVolumeDidChangeNotification"
object:nil];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
LoginVC *login=[[LoginVC alloc]initWithNibName:@"LoginVC" bundle:nil];
self.navigate=[[UINavigationController alloc]initWithRootViewController:login];
[self.window addSubview:navigate.view];
[login release];
[self.window makeKeyAndVisible];
return YES;
- (void)volumeChanged:(NSNotification *)notification
float volume =
[[[notification userInfo]
objectForKey:@"AVSystemController_AudioVolumeNotificationParameter"]
floatValue];
NSLog(@"chfi");
// Do stuff with volume
我已经使用了这段代码,但它没有被调用。
【问题讨论】:
做不到。您能更一般地解释一下您要做什么吗?可能有替代解决方案。 感谢您的回复。我只是想在应用处于后台时检测硬件音量检测。 你为什么要这样做?可能有不同的方法可以达到相同的效果。 我错了。看起来有可能。试试这个:***.com/questions/3651252/… 这是应用程序中的一个过程,当应用程序在后台并且用户更改 Iphone 的音量时,我必须向服务器发送消息,这就是原因。 【参考方案1】:你可以设置一个监听器。当音量改变时,回调方法将被调用。
【讨论】:
据我所知,没有办法直接做,所以我听一个音量变化通知。 当应用程序在后台和IOS 6.0中时你是否实现了这个 ***.com/questions/9660445/…>以上是关于IOS 6 中的音量检测的主要内容,如果未能解决你的问题,请参考以下文章