Я працюю над веб-додатком. Як я можу надсилати push-сповіщення користувачам iOS, коли з’являється новий вміст?
Я працюю над веб-додатком. Як я можу надсилати push-сповіщення користувачам iOS, коли з’являється новий вміст?
Відповіді:
Щоб бути більш конкретним, для того, щоб веб-додаток надсилав push-повідомлення на мобільний пристрій, наприклад, iPhone, мобільний пристрій повинен бути зареєстрований для отримання push-сповіщень для певної програми. Реєстрація для push-сповіщення здійснюється через нативну програму і може здійснюватися лише через нативний додаток. Після реєстрації нативного додатка для push-сповіщення він може надіслати маркер авторизації на сервер, який може використовуватися разом із сертифікатом, що використовується для надання рідного клієнта, для надсилання push-повідомлень на мобільний пристрій.
Як зазначено в іншій відповіді, одним із варіантів є «загортання» веб-програми у власну програму. Це означає, що ви створите нативну програму, яка в основному представляє користувачеві, що показує вашу веб-програму, UIWebView (для iPhone Dev). Хоча ця функціональна частина функціонує так само, як і власний веб-переглядач, ви зможете додати можливість зареєструватися для push-сповіщень за допомогою нативної функції керування.
Вам було б корисно переглянути документ про push-сповіщення Apple, оскільки він надає досить гарну інформацію про те, як функція push-messaging на iPhone.
Дивіться ці посилання, надані Пітером Хосі:
Ні, лише нативні програми iOS підтримують push-сповіщення.
ОНОВЛЕННЯ:
Веб-сайти Mac OS X 10.9 та Safari 7 також можуть надсилати push-сповіщення, але це все ще не стосується iOS. Прочитайте Посібник з програмування сповіщень для веб-сайтів . Також ознайомтесь із сесією 614 WWDC 2013 .
Поки ще не підтримується на iOS (як на iOS 10), веб-сайти можуть надсилати push-повідомлення Firefox та Chrome (Desktop / Android) за допомогою API Push .
API Push використовується разом із попередніми веб-повідомленнями для відображення повідомлення. Перевага полягає в тому, що Push API дозволяє надсилати сповіщення навіть тоді, коли користувач не займається серфінгом на вашому веб-сайті, оскільки вони створені на сервісних робочих місцях (сценарії, зареєстровані браузером і можуть бути виконані у фоновому режимі пізніше, навіть після ваш користувач покинув ваш веб-сайт).
Процес надсилання повідомлення включає в себе наступне:
Push API в даний час підтримується на робочому столі і Android з допомогою Chrome , Firefox і Opera .
Ви також можете надсилати push-повідомлення на робочий стіл Apple / Safari за допомогою APN. Підхід схожий, але з багатьма ускладненнями (яблучні сертифікати розробників, пакети push-послуг, низьке підключення TCP до APN).
Якщо ви хочете самостійно реалізувати push-сповіщення, почніть з цих навчальних посібників:
Якщо ви шукаєте краплі рішення, я б запропонував Pushpad , який я створив.
Оновлення (вересень 2017 року): Apple розпочала розробку сервісних службовців для WebKit ( статус ). Оскільки сервісні працівники є фундаментальною технологією для веб-натискань, це великий крок вперед.
Google Chrome тепер підтримує стандарт W3C для push-сповіщень.
Ви можете скористатися, якщо не хочете створити власний власний додаток: https://pushover.net/
ПОСТІЙНО. Це абсолютно новий розум. На останній версії OS X (Mavericks) ви МОЖЛИ надсилати push-повідомлення з веб-сторінки на робочий стіл. Але згідно з документацією, НЕ iPhone:
Note: This document pertains to OS X only. Notifications for websites do not appear on iOS.
В даний час компанія Apple планує дозволити два види натискання сповіщень: Push-повідомлення про веб-сайт OS X та місцеві сповіщення.
Очевидне перешкода тут полягає в тому, що це не працюватиме на ПК, і це не дозволить вам робити Android-push повідомлення.
Крім того, ви можете фактично з версіями, старими як Snow Leapord, надсилати push-повідомлення з веб-сайту до тих пір, поки зазначений веб-сайт відкритий і активний. Нова ОС Mavericks дозволить надсилати сповіщення, навіть якщо сайт не відкритий, якщо ви вже дали дозвіл вказаному сайту надсилати push-сповіщення.
З вуст Apple:
В OS X v10.9 і пізніших версіях ви можете відправляти сповіщення про веб-сайт OS X зі свого веб-сервера безпосередньо користувачам OS X за допомогою служби Apple Push Notification (APN). Не плутати з локальними сповіщеннями, push-сповіщення можуть охопити ваших користувачів незалежно від того, відкритий ваш веб-сайт або їх веб-браузер…
Щоб інтегрувати push-сповіщення у свій веб-сайт, ви спочатку представляєте інтерфейс, який дозволяє користувачеві увімкнути отримання сповіщень. Якщо користувач погоджується, Safari зв’язується з вашим веб-сайтом, вимагаючи його облікових даних у вигляді файлу, який називається push пакет. Пакет push також містить активи сповіщень, використовувані в OS X, і дані, що використовуються для спілкування з веб-службою, яку ви налаштували. Якщо пакет push є дійсним, ви отримуєте на пристрої унікальний ідентифікатор, відомий як маркер пристрою. Користувач отримує сповіщення, коли ви надсилаєте до APN-кодів комбінацію токена цього пристрою та повідомлення чи корисне навантаження.
Отримавши сповіщення, користувач може натиснути на нього, щоб відкрити обрану веб-сторінку в браузері за замовчуванням користувача.
Примітка: Якщо вам потрібно оновити APN, прочитайте розділ "Служба повідомлень Apple Push" в Посібнику з локального та Push Notification Programming. Хоча документ характерний лише для push-сповіщень iOS та OS X, парадигми служби push-сповіщення все ще застосовуються.
Ні, немає жодного способу, щоб веб-передавач отримав спонукальне сповіщення. Що ви можете зробити, це перетворити свій веб-сайт в нативну програму, яка має push-сповіщення.
W3C у 2010 році створила робочу групу з впровадження сповіщень:
http://www.w3.org/2010/web-notifications/
Ця Робоча група розробляє API, які розкривають ці механізми для веб-додатків, щоб веб-розробники, що створюють, наприклад, веб-клієнти електронної пошти та клієнти миттєвих повідомлень, могли більш тісно інтегрувати свою поведінку веб-додатків із функціями сповіщення операційних систем своїх кінцевих споживачів.
Зрештою, результат схожий на поганий жарт, оскільки він працює лише у тому випадку, якщо конкретний веб-сайт відкритий: http://alxgbsn.co.uk/notify.js/
Я думаю, що вони пропустили реалізацію можливості додавати push-адреси, щоб браузер міг запитувати повідомлення під час роботи у фоновому режимі - і перш за все - якщо всі вкладки були закриті.
Ви можете використовувати веб-розетки HTML5 для введення власних push повідомлень. З Вікіпедії :
"Що стосується клієнта, WebSocket повинен був бути реалізований в Firefox 4, Google Chrome 4, Opera 11 і Safari 5, а також мобільній версії Safari в iOS 4.2. Також браузер BlackBerry в OS7 підтримує WebSockets."
Для цього вам потрібен власний сервер провайдера, щоб надсилати повідомлення клієнтам.
Якщо ви хочете використовувати APN (Apple Push Notification) або C2DM (Cloud to Device Message), у вас повинна бути власна програма, яку потрібно завантажити через Інтернет-магазин.
Відмінною альтернативою для цього є Pushbullet .
Однак користувачеві потрібно встановити акаунт Pushbullet та встановити додаток (iOS, Android) або плагін (Chrome, Opera, Firefox та Windows).
Ви можете використовувати API , створивши додаток Pushbullet і підключивши користувача програми до користувача Pushbullet за допомогою oAuth2.
Використання бібліотеки полегшило б роботу PHP, я можу порекомендувати ivkos / Pushbullet-for-PHP .
Перевірте сповіщення Xtify Web Push. http://getreactor.xtify.com/ Цей інструмент дозволяє пересувати вміст на веб-сторінку та націлювати відвідувачів, а також запускати повідомлення на основі подій DOM браузера. Він розроблений спеціально з урахуванням мобільних пристроїв.