ユーザーが停留所に近づいたときにバスの到着時間を取得しようとしていますが、その地域が基本的なローカル通知を送信して正しくトリガーされていることをテストしました。私のWebサービスコールが正常に動作していることを確認します。動的ロケーションベースのローカル通知Swift iOS
しかし、情報を取得して通知を送信するのが苦労しています。それが送信されない理由
var bgTask: UIBackgroundTaskIdentifier = UIBackgroundTaskIdentifier()
bgTask = UIApplication.shared().beginBackgroundTask {
self.webService?.getStopEstimates(routeStopIds: stopRouteIdSet, routeNameDict: routeNameDict, completion: { (result) in
if result == "error" {
return
}
let notification = UILocalNotification()
notification.fireDate = Date(timeIntervalSinceNow: 1)
notification.alertTitle = region.identifier + " Stop Details"
notification.alertBody = result
notification.soundName = UILocalNotificationDefaultSoundName
UIApplication.shared().scheduleLocalNotification(notification)
})
UIApplication.shared().endBackgroundTask(bgTask)
}
いずれかを参照してください。ここで
は私のコードですか?バックグラウンドフェッチとロケーションサービスを有効にしました。これは内部にありますdidEnterRegion
をSwift 3を使用すると、新しいUserNotificationsフレームワークがあることがわかります。 – tktsubota
ファンドアプリケーション(UIApplication、didFinishLaunchingWithOptions launchOptions:[UIApplicationLaunchOptionsKey:Any]?)に通知するために登録することを忘れている可能性がありますか?登録コード:let notificationSettings = UIUserNotificationSettings(種類:.alert、categories:nil) application.registerUserNotificationSettings(notificationSettings) – Ramis
どのようにテストしていますか? Xcodeで?要求が送受信されたかどうかを確認するログをいくつか追加します。エラーはありますか? – Wain