今天,当移动设备通过使用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
})....
是否可以在没有用户交互的情况下在同一方法中启动应用程序?
提前致谢,
菲利普
答案 0 :(得分:0)
抱歉,但不,您无法以编程方式将iOS启动到前台。 iOS的设计禁止这样做,因为它总是要求用户手势以允许应用程序锥形到前景。您最接近的是发送本地通知。点击本地通知是获得所需用户手势的最简单且最人性化的方式。