Pull to refresh

Руководство по работе с Apple Push Notification Service

Reading time 13 min
Views 247K
Development for iOS *Development of mobile applications *
Tutorial
Sandbox
Статья представляет собой вольный перевод руководства по работе с Apple Push Notification Service сайта raywenderlich.com и некоторые мои дополнения.

iOS-приложения не могут долгое время находиться в фоновом режиме. В целях сохранения заряда батареи приложениям, работающим в фоне, разрешено выполнять ограниченный набор действий.

Но что если происходит что-то интересное и вы хотите сообщить об этом пользователям, даже если ваше приложение у них не запущено?
Читать дальше →
Total votes 53: ↑49 and ↓4 +45
Comments 33

Особенности работы с Apple push notification service

Reading time 3 min
Views 29K
Ruby *Development for iOS *
Добрый день, уважаемые хабражители. Совсем недавно я закончил разработку apns-сервиса и хотел бы поделиться некоторыми особенностями работы с ним. Статья не является пошаговой инструкцией, а описывает трудности и подводные камни с которыми может столкнуться разработчик. Примеры кода буду приводить на Ruby, но все написанное актуально и для других платформ, в частности, PHP.
Читать дальше →
Total votes 32: ↑25 and ↓7 +18
Comments 9

Notification Hubs — облачный сервис уведомлений миллионам пользователей iOS и Windows

Reading time 3 min
Views 7.7K
Microsoft corporate blog Development for iOS *Microsoft Azure *
Ранее в январе Скотт Гатри анонсировал новый функционал подсистемы обмена сообщениями Windows Azure Service Bus под названием Notification Hubs. Узлы уведомлений (Notification Hubs) – это новый функционал предлагающий экстремально масштабируемую, кроссплатформенную инфраструктуру пуш-уведомлений для миллионов пользователей и устройств.

Отличительные особенности нового сервиса Notification Hubs:

  • кроссплатформенная поддержка пуш-уведомлений. Сервис узлов уведомлений предлагает API для отправки уведомлений различным устройствам и платформам. Вы можете отправлять сообщения специфичные для каждой платформы и в независимом формате. Сегодня поддерживаются платформы Windows 8 и Apple iOS. Поддержка Android и Windows Phone ожидается вскоре;
  • эффективная маршрутизация публикаций/подписок и мултикаст основанный на тегах. Сервис узлов уведомлений оптимизирован специально для отправки с низкими задержками уведомлений тысячам и миллионам устройств. Ваш серверный бэкенд может отправить одно сообщение в узел уведомлений и миллионы пуш-уведомлений будут автоматически отправлены пользователям. Устройства и приложения могут быть определить теги для каждого пользователя при регистрации в узле, которые могут использоваться для фильтрации пользователей при отправке сообщений. Эти теги могут быть любыми строками, что значительно облегчает задачу отправки сообщений определенным группам пользователей;
  • экстремальное масштабирование. Узлы уведомлений и Windows Azure позволяют вам работать с миллионами устройств и пользователей без необходимости в построении или переделке собственной инфраструктуры. Механизм маршрутизации публикаций/подписок позволяет эффективно и просто маршрутизировать и доставлять уведомления миллионам пользователей без вложений в собственную инфраструктуру;
  • использование из приложения с любым бэкендом. Узлы уведомлений могут быть интегрированы и использованы из любого приложения с серверным бэкендом. Узлы эффективно работают в связке с Windows Azure Mobile Services. Они также могут быть использованы серверными приложениями размещенными в виртуальным машинах (IaaS) Windows или Linux. Решения на базе Cloud Services и Windows Azure Web Sites так же могут использовать узлы уведомлений.

Новый функционал интегрирован в панель администрирования Windows Azure. Создание узла уведомлений осуществляется в несколько кликов мышью и требует меньше минуты.
Читать дальше →
Total votes 26: ↑19 and ↓7 +12
Comments 11

JavaPNS и JRE7

Reading time 2 min
Views 4.9K
Java *
По роду деятельности столкнулся с необходимостью отправлять push уведомления на яблочные девайсы. Была найдена библиотека JavaPNS 2.2, подготовлен сертификат для Developer версии, написан сервис который шлет push уведомления, все запустилось все завертелось, push уведомления отправляются — в общем полное счастье. Но вот настал день релиза, был вновь подготовлен уже Production сертификат и экспортирован вместе с приватным ключом в p12 все задеплоено на сервера… иииии… как вы наверное уже догадались ничего не заработало :). Судя по логам push отправляется, но на девайс ничего не приходит.
Скандалы, интриги, расследования
Total votes 7: ↑5 and ↓2 +3
Comments 2

Как организовать отправку push-уведомлений на айфон

Reading time 5 min
Views 21K
Surfingbird corporate blog Perl *Development for iOS *
В Surfingbird мы используем пуш-уведомления, чтобы сообщать нашим пользователям срочные новости и просто информировать их об интересных материалах за день. Уже в первые недели тестов пуши показали свою огромную эффективность в плане увлечения ретеншена. Этому есть логичное объяснение – телефон у пользователя всегда с собой, в метро, в туалете, на совещаниях и т. д. Когда юзеру приходит пуш, все его внимание концентрируется на этом уведомлении.

Мы реализовали отправку пуш-уведомлений с бекенда на языке программирования Perl. Однако, когда мы только начали внедрять пуши, то столкнулись с некоторыми трудностями. О трудностях и их преодолении мы и хотим рассказать в этом посте.

image
Читать дальше →
Total votes 39: ↑28 and ↓11 +17
Comments 15

Когда почта доставляет: боремся с потерями push-уведомлений в iOS

Reading time 17 min
Views 13K
Конференции Олега Бунина (Онтико) corporate blog Programming *Development for iOS *Development of mobile applications *Mobile applications design *
Со стороны пользователя почтовый клиент — приложение нехитрое. Разработчики Яндекс.Почты даже шутят, что в приложении всего три экрана: список писем; отправка письма; экран about.

Но очень много интересного происходит под капотом. Как многие мобильные приложения, Почта использует push-уведомления, чтобы взаимодействовать с пользователями. Как многие iOS-приложения, Почта теряет часть уведомлений в силу особенностей работы Apple Push Notification Service.

Руководитель iOS-группы Яндекс.Почты Ася Свириденко докажет, что даже с учетом ограничений системы, с потерями push-уведомлений можно и нужно бороться, если они критичны для вашего приложения. Для Почты это так, потому что push-уведомления о новых письмах — это то, ради чего пользователь устанавливает приложение. Если же для вашего приложения доставка push-уведомлений не так критична, узнать, какие велосипеды нагородила мобильная Яндекс.Почта, все равно интересно.


Речь пойдет о remote notification, то есть уведомлениях, которые приходят с сервера через APNs (Apple Push Notification Service). Локальные уведомления затрагивать не будем и поговорим о том:

  • Как выглядит API для работы с push-уведомлениями. Рассмотрим схему доставки push-уведомлений и то, где в этой схеме могут возникать потери. 
  • Как решили бороться с потерями в Яндекс.Почте — об очереди push-уведомлений.
  • Как логировать и какие еще сложности могут встретиться.
Total votes 30: ↑30 and ↓0 +30
Comments 9

Внедряем кросс-платформенные пуш-уведомления: начало

Reading time 12 min
Views 24K
Домклик corporate blog Google API *Go *Browsers
Tutorial

Добрый день! Меня зовут Владимир Столяров, я бэкенд-разработчик в команде Клиентские коммуникации в ДомКлике. В этой статье я расскажу о том, как внедрить кросс-платформенные пуш-уведомления. Хотя про это уже написано немало, я бы хотел рассказать о некоторых нюансах, с которыми нам пришлось столкнуться в процессе внедрения. Для лучшего понимания происходящего также напишем с вами небольшое веб-приложение, способное принимать пуши.


Читать дальше →
Total votes 27: ↑27 and ↓0 +27
Comments 16

Внедряем кросс-платформенные пуш-уведомления: дополнительные возможности

Reading time 10 min
Views 5.2K
Домклик corporate blog Development of mobile applications *Google API *Go *Browsers

В своей прошлой статье я рассказал, как мы научились отправлять пуши на разные платформы и с чем при этом столкнулись. В этот раз я расскажу про некоторые изменения, которые помогут улучшить как клиентский опыт в приложении, так и производительность отправки на сервере. Под катом вас ждет много графических демонстраций.


Читать дальше →
Total votes 29: ↑29 and ↓0 +29
Comments 0