Могу ли я отправить словарь предупреждений APN как на iOS 7, так и на iOS 8?

В iOS 8 появилась возможность отправлять ключ предупреждения в словаре APN в виде строки, содержащей текст предупреждения, или словаря с текстом предупреждения в ключ его «тела». См. документацию Apple. В iOS 7 , ключ «предупреждения» должен быть строкой, содержащей текст предупреждения.

Мой вопрос: если я хочу воспользоваться функциями iOS 8 в словаре «предупреждений» при отправке удаленных уведомлений (в частности, ключ «title» для Apple Watch), будет ли он продолжать работать с iOS 7? То есть знает ли APNS, что устройство работает под управлением iOS 7 или 8, и отправляет ли ему соответствующие данные? Или мой сервер должен знать, что устройство работает под управлением iOS 7, и отправлять ему полезную нагрузку со строкой «предупреждения» при отправке устройствам под управлением iOS 8 «словарь предупреждений»?

Имеет ли это смысл? Спасибо!


person ScottyB    schedule 28.05.2015    source источник


Ответы (1)


Оно работает. Протестировано со следующей полезной нагрузкой на iOS 7.1.2:

{
    "aps":{
        "alert": {
            "body": "alert body",
            "title": "alert title"
        },
        "sound": "default",
        "badge": 1
    }
}

(Между прочим. Я не вижу никаких уведомлений о том, что я использую только iOS8 в документе.)

person Ondrej Hanak    schedule 28.05.2015