0

Уведомления от OneSiganl для iOS 10 не работают. вещи я перепроверил еще раз, что я использую ..Уведомление OneSignal, не работающее на iOS 10

Xcode 8.1, Swift 3, Добавлены последняя инициализацию серта, При возможности Push-уведомлений находятся на с правом,

Моих методов приложения делегат

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 

    OneSignal.initWithLaunchOptions(launchOptions, appId: ONE_SIGNAL_APPID) 
    OneSignal.setLogLevel(.LL_VERBOSE, visualLevel: .LL_NONE) 
    OneSignal.promptLocation(); 
    OneSignal.initWithLaunchOptions(launchOptions, appId: ONE_SIGNAL_APPID, handleNotificationReceived: { 

     (Notification) in    

    }, handleNotificationAction: { (action) in 

    }, settings:[kOSSettingsKeyAutoPrompt: true , 
        kOSSettingsKeyInFocusDisplayOption:OSNotificationDisplayType.notification.rawValue]) } 

И для регистрации устройства с идентификатором.

 func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { 


    OneSignal.sendTag("myType", value: "myBroadCast") 

    OneSignal.idsAvailable { (userId, deviceToken) in 

     let userId = String(format: "%@", userId!) 
     DataManager.sharedInstance.deviceToken = userId; 

     print("player id",userId) 
    } 

У меня есть плеер, которым я, по-видимому, пользовался. Поэтому мое устройство зарегистрировано успешно.

Дело в том, что уведомления api не принимаются на моем устройстве. Кроме OneSignal выборки сообщений кнопочных (которые работают нормально),

Мой API полезной для уведомления является

{"alert":{"notification":{"notification_type":1,"v_n":"Custom Place","u_n":"customer","c_id":907,"m_id":1207,"m_t":"1","f_a":0,"d_d":"07 Dec, 2016","t_t":"07:40 AM","is_group_chat":true},"body":"hxuf"},"badge":1,"sound":"NewMessage.mp3"} 

Пожалуйста, помогите мне в этом отношении. Поскольку эта проблема связана только с устройствами iOS 10.

ответ

0

Если ваш метод POST REST API вызывает https://onesignal.com/api/v1/notifications, ваш формат JSON неверен. Полезная нагрузка JSON должна быть следующей для уведомления OneSignal на основе вашего содержимого из вашего примера JSON в вашем вопросе.

{ 
    "app_id": "YOUR_ONESIGNAL_APP_ID", 
    "contents": {"en": "hxuf"}, 
    "ios_badgeType": "SetTo", 
    "ios_badgeCount": 1, 
    "ios_sound":"NewMessage.mp3", 
    "data": {"notification_type":1,"v_n":"Custom Place","u_n":"customer","c_id":907,"m_id":1207,"m_t":"1","f_a":0,"d_d":"07 Dec, 2016","t_t":"07:40 AM","is_gr`oup_chat":true} 
} 

Note1: Вы должны установить параметр таргетинг, такие как include_player_ids как массив JOSN в список OneSignal идентификаторов игрока/пользователя. Или используйте другой параметр таргетинга, такой как included_segments. Ознакомьтесь со всеми параметрами tarting на странице документации OneSignal в нижней части этого ответа.

Note2: .mp3 файлы не могут использоваться для звуков уведомлений для iOS. Вы должны преобразовать его в формат .wav или .caf.

См. Полную документацию OneSignal относительно конечной точки вызова REST API ниже. https://documentation.onesignal.com/reference#create-notification

+0

спасибо. Полезная нагрузка была в неправильном формате. –

Смежные вопросы