iOS后台服务震动手机

Jon*_*ono 7 iphone ios ios7

我有一个在后台运行的应用程序(位置服务).当应用程序位于前台时,它会在我想要它时振动很好,但是,如果它不在前台(在多任务处理视图中),则振动不再起作用.这是不允许的?我的后台应用程序是否有某种方式可以提供振动警报?如果不是那个哔哔声呢?

现在我正在做这样的事情:

    AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
Run Code Online (Sandbox Code Playgroud)

导入时:

#import <AudioToolbox/AudioServices.h>
Run Code Online (Sandbox Code Playgroud)

Fem*_*emi 5

如果启用背景音频模式(如Apple在https://developer.apple.com/library/prerelease/ios//qa/qa1668/_index.html中所述),则当应用程序处于后台状态时会发生振动.我刚刚确认在目标属性中的"必需背景模式"属性下添加"应用播放音频或使用AirPlay传输音频/视频"条目允许振动在应用不在前台时工作.


max*_*sme 5

我发现在您的应用程序功能的“背景模式”中检查“音频、AirPlay 和画中画”是有效的:

在此处输入图片说明


Tim*_*Tim 3

如果您尝试在您的应用程序在后台运行时向用户提供某项通知,请考虑使用本地通知来传递该信息(请参阅 参考资料UILocalNotification)。

强制手机振动并不是一种很好的用户体验,原因如下:

  • 一些用户(包括我自己)在静音模式下禁用振动
  • iPad 和 iPod Touch 不振动
  • 用户可能不知道是什么导致了振动或声音,并且可能没有意识到要打开您的应用程序

本地通知以用户可以控制并识别的方式向用户显示。

如果您的意图除了通知用户之外,请将其添加到您的问题中,我会尽力提供帮助。