2017-03-31 73 views
1

我正在製作一個應用程序,假設用戶每天都會在某個特定時間報導新聞。它通過一個從數組中調用它的函數獲取新聞文本。我的問題是:如何讓我的應用程序調用該函數,然後每天給我發送一個帶有信息文本的推送通知,比如說,凌晨4點?如何在設定的時間獲得推送通知? (Swift 3)

感謝大家的回答!祝你有美好的一天!

+1

對您有用推送通知,那麼你需要在某個服務器上運行一個進程。您可以安排在特定時間發送本地通知,但測試是在通知安排時設定的,而不是在通知發送時設置。 – Paulw11

回答

2

下面是一些代碼,我以前用過,也不是百分百你在找什麼,但如果你想使用我希望你需要 修改它以每天發送

import UIKit 
import UserNotifications 

class ViewController: UIViewController, UNUserNotificationCenterDelegate { 
    var isGrantedNotificationAccess:Bool = false 
    @IBAction func send10SecNotification(_ sender: UIButton) { 
     if isGrantedNotificationAccess{ 
      //add notification code here 

     //Set the content of the notification 
     let content = UNMutableNotificationContent() 
     content.title = "10 Second Notification Demo" 
     content.subtitle = "From MakeAppPie.com" 
     content.body = "Notification after 10 seconds - Your pizza is Ready!!" 

     //Set the trigger of the notification -- here a timer. 
     let trigger = UNTimeIntervalNotificationTrigger(
      timeInterval: 10.0, 
      repeats: true) 

     //Set the request for the notification from the above 
     let request = UNNotificationRequest(
      identifier: "10.second.message", 
      content: content, 
      trigger: trigger 
     ) 

     //Add the notification to the currnet notification center 
     UNUserNotificationCenter.current().add(
      request, withCompletionHandler: nil) 

    } 
} 

override func viewDidLoad() { 
    super.viewDidLoad() 
    UNUserNotificationCenter.current().requestAuthorization(
     options: [.alert,.sound,.badge], 
     completionHandler: { (granted,error) in 
      self.isGrantedNotificationAccess = granted 
     } 
    ) 
}} 
+0

非常感謝你! – Whazzup

相關問題