如何在didDetermineState方法中打开app

时间:2017-09-27 14:16:48

标签: ios swift ibeacon

今天,当移动设备通过使用didDetermineState进入该区域时,我可以启动本地通知,就像下面的代码一样,即使应用程序根本没有运行。

    if (state == CLRegionState.inside){

        let date = Date()
        let calendar = Calendar.current
        let hour = calendar.component(.hour, from: date)
        let minutes = calendar.component(.minute, from: date)


                let content = UNMutableNotificationContent()
                content.title = "Sonda"
                content.subtitle = "Entrada"
                content.body = "Hora: " + String(hour) + ":" + String(minutes)
                content.badge = 1
                content.sound = .default()
                let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 2, repeats: false)
                let requestIdentifier = "reqIdentifier"
                let request = UNNotificationRequest(identifier: requestIdentifier, content: content, trigger: trigger)
                UNUserNotificationCenter.current().add(request, withCompletionHandler: {error in
                    //handle error
                })....

是否可以在没有用户交互的情况下在同一方法中启动应用程序?

提前致谢,

菲利普

1 个答案:

答案 0 :(得分:0)

抱歉,但不,您无法以编程方式将iOS启动到前台。 iOS的设计禁止这样做,因为它总是要求用户手势以允许应用程序锥形到前景。您最接近的是发送本地通知。点击本地通知是获得所需用户手势的最简单且最人性化的方式。