iOS后台服务震动手机

时间:2014-01-16 22:00:30

标签: ios iphone ios7

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

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

    AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

导入时:

#import <AudioToolbox/AudioServices.h>

4 个答案:

答案 0 :(得分:5)

如果您启用了背景音频模式(Apple在https://developer.apple.com/library/prerelease/ios//qa/qa1668/_index.html处记录),那么当应用处于后台状态时会发生振动。我刚刚确认在目标属性中的“必需背景模式”属性下添加“应用播放音频或流音频/视频使用AirPlay”条目允许振动在应用不在前台时工作。

答案 1 :(得分:3)

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

由于以下几个原因,强迫手机振动并不是一个很好的用户体验:

  • 某些用户(包括我自己)在静音模式下禁用振动
  • iPad和iPod Touch不振动
  • 用户可能不知道导致振动或声音的原因,可能无法实现打开您的应用程序

用户可以控制并识别本地通知。

如果您的意图不仅仅是通知用户,请将其添加到您的问题&amp;我会尽力帮忙。

答案 2 :(得分:2)

我发现检查音频,AirPlay和画中画&#39;在背景模式中&#39;您的应用功能的工作原理:

enter image description here

答案 3 :(得分:-2)

我非常确定您在手机处于背景状态时无法振动。我实际上从未见过应用程序这样做。