
项目是使用的 flutter,第一次接触原生 ios native,请教各位。
已经进行了的操作:
1 、apple 开发者账户网页添加了 push notification 证书
2 、xcode 里 runner target 的 capability 也打开了推送
3、如下修改了 AppDelegate.swift (参考的官方文档)
但是真机测试并没有 print 出 token 值,就很疑惑,想请教是不是缺少了什么步骤,还是 AppDelegate.swift 写错了
import UIKit import Flutter @UIApplicationMain @objc class AppDelegate: FlutterAppDelegate { override func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? ) -> Bool { UIApplication.shared.registerForRemoteNotifications() GeneratedPluginRegistrant.register(with: self) return super.application(application, didFinishLaunchingWithOptions: launchOptions) } override func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { print(deviceToken) sendDeviceTokenToServer(token: deviceToken) } } func sendDeviceTokenToServer(token: Data) { let url = URL(string: "https://push.example.com/ios?token=" + String(decoding: token, as: UTF8.self))! let task = URLSession.shared.dataTask(with: url) {(data, response, error) in guard let data = data else { return } print(String(data: data, encoding: .utf8)!) } task.resume() } 1 frqk 2021-04-14 11:02:03 +08:00 via iPhone 没有 requestAuthorization 吧 |