Мне нужно добавить некоторые аргументы в полезную нагрузку json для службы APNS. Как я могу это сделать? это документация для apple: http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ApplePushService/ApplePushService.html#//apple_ref/doc/uid/TP40008194-CH100-SW1
Когда я пытаюсь отправить сообщение с кнопками close и view, мне нужно добавить еще два аргумента, которые нужно мобильному приложению. Есть идеи?
Не уверен, что вы получили ответ. Но это то, что упоминается в документации
Поставщики могут указывать пользовательские значения полезной нагрузки вне пространства имен APS, зарезервированных Apple. Пользовательские значения должны использовать структурированные и примитивные типы JSON: словарь (объект), массив, строку, число и логическое значение.
Поэтому, чтобы добавить пользовательские значения в вашу полезную нагрузку, просто добавьте их в качестве пар ключ-значение в своей полезной нагрузке. Что-то вроде этого
{ "aps":{ "alert":"Your Message", "sound":"push1.wav" }, "custom_key1":"value1", "custom_key2":"value2" }
Здесь custom_key1
и custom_key2
являются вашими настраиваемыми ключами, а value1
и value2
являются их значениями.
Если кому-то все еще интересно:
$body = (array('aps' => array('alert' => $message,'sound' => $sound_file_wav), "some_key" => "custom_id")); $payload = json_encode($body);
Я использую следующее в PHP
$title = 'My Test Message'; $sound = 'doorbell.caf'; $msgpayload=json_encode(array('aps' => array('alert' => $title,'sound' => $sound,))); $response = $sns->publish(array( 'TopicArn' => $TopicArn, 'MessageStructure' => 'json', 'Message' => json_encode(array( 'default' => $title, 'APNS_SANDBOX' => $msgpayload )) ));