【问题标题】:IOS: Available actions after iBeacon detectionIOS:iBeacon 检测后可用的操作
【发布时间】:2015-06-11 01:06:28
【问题描述】:

如果锁定 iPhone 检测到我的应用注册了 iBeacon 信号,我的应用能否在其约 5-10 秒的唤醒时间内:

  1. 联系我的网络服务器发送一些数据?
  2. 发送预定义的短信?
  3. 访问 iPhone 的当前 GPS 位置?

【问题讨论】:

标签: ios iphone ibeacon


【解决方案1】:

是的,我可以确认您可以联系网络服务器并访问精确位置 (GPS),因为我通常在您提到的窗口中执行此操作。

我在 iOS 上发送 SMS 短信的经验较少,但我的基本理解是,您根本无法在 iOS 上以自动方式发送 SMS 消息,您只能将屏幕呈现给用户以启动发送。当您的应用不在前台时,我不相信您可以这样做。

但是,您可以发送显示在锁定屏幕上的本地通知。

【讨论】:

  • 您知道锁定 Android 手机而不是 iPhone 的答案吗?我的应用程序能否在显示通知之前联系网络服务器并访问当前 GPS 位置?谢谢!
  • 当然,是的。使用锁定的 Android 设备做任何这些事情都没有问题。
【解决方案2】:

是的,应用程序可以在手机锁定时执行所有这些操作。

此外,如果您想在后台继续扫描和所有这些功能,您可以使用UIBackgroundTaskIdentifier

它将在后台继续扫描,直到检测到任何信标。一旦没有可用的信标,它就会在容忍时间结束时停止在后台扫描。

- (void)applicationDidEnterBackground:(UIApplication *)application
 {
   NSLog(@"=== DID ENTER BACKGROUND ===");
   UIBackgroundTaskIdentifier bgTask = [[UIApplication  sharedApplication] beginBackgroundTaskWithExpirationHandler:^{
         NSLog(@"End of tolerate time. Application should be suspended now if we do not ask more 'tolerance'");
       }];

  if (bgTask == UIBackgroundTaskInvalid) {
      NSLog(@"This application does not support background mode");
  }
  else {
     //if application supports background mode, we'll see this log.
     NSLog(@"Application will continue to run in background");
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-20
    • 2016-07-17
    • 2018-06-17
    • 2019-10-04
    • 1970-01-01
    • 1970-01-01
    • 2015-11-10
    相关资源
    最近更新 更多