Идентификатор игрока возвращает ноль, когда я использую его в Onesignal - PullRequest
0 голосов
/ 09 октября 2019

my didFinishLaunchingWithOptions в делегате приложения

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.

    FirebaseApp.configure()

   let notificationReceivedBlock: OSHandleNotificationReceivedBlock = { notification in

      print("Received Notification: \(notification!.payload.notificationID)")
   }

   let notificationOpenedBlock: OSHandleNotificationActionBlock = { result in
      // This block gets called when the user reacts to a notification received
      let payload: OSNotificationPayload = result!.notification.payload

      var fullMessage = payload.body
      print("Message = \(fullMessage)")

      if payload.additionalData != nil {
         if payload.title != nil {
            let messageTitle = payload.title
               print("Message Title = \(messageTitle!)")
         }

         let additionalData = payload.additionalData
         if additionalData?["actionSelected"] != nil {
            fullMessage = fullMessage! + "\nPressed ButtonID: \(additionalData!["actionSelected"])"
         }
      }
   }

   let onesignalInitSettings = [kOSSettingsKeyAutoPrompt: false,
      kOSSettingsKeyInAppLaunchURL: true]

   OneSignal.initWithLaunchOptions(launchOptions,
      appId: "Removed app id but it exists in my app",
      handleNotificationReceived: notificationReceivedBlock,
      handleNotificationAction: notificationOpenedBlock,
      settings: onesignalInitSettings)


    return true

}

моя попытка получить идентификатор пользователя в классе viewDidLoad () класса viewController, но идентификатор пользователя равен нулю, я пробовал много решений, которые я нашел здесь, но все они приводят кid пользователя ноль, я попробовал документацию по сигналу и тоже не повезло.

    OneSignal.setSubscription(true)
    let status:OSPermissionSubscriptionState = OneSignal.getPermissionSubscriptionState()
    let userID = status.subscriptionStatus.userId
...