implementace oznámení push ve vaší aplikaci
před několika lety se začaly objevovat služby, které přinesly jednoduchost typických pub / sub systémů pro push oznámení. Místo toho, abyste museli ručně sledovat telefonní ID uživatele jednotlivě, vám tyto služby umožňují jednoduše přihlásit uživatele k požadovaným kanálům, ze kterých můžete dostávat oznámení push.
například pokud chce být uživatel upozorněn na zveřejnění kurzu JavaScriptu na Thinksteru, mohli bychom je přihlásit k odběru kanálu s názvem „javascript“, ke kterému by se mohly přihlásit i tisíce dalších uživatelů. Spuštění push oznámení všem těmto uživatelům by však vyžadovalo pouze jeden řádek kódu-jednoduše publikujte push oznámení kanálu „javascript“ a všichni naši uživatelé jej obdrží. Porovnejte to s dotazováním na databázi, která obsahuje telefonní ID vašeho uživatele, segmentováním, kteří uživatelé chtějí být informováni o JavaScriptu, a poté zasíláním oznámení jednotlivě pro každou z nich do APNS / GCM. Fuj!
existuje několik služeb, které poskytují tuto funkci pub/sub, ale v tomto okamžiku důrazně doporučujeme použít Parse pro správu oznámení push. Zde je důvod, proč: – je široce přijat a bitva tvrzené z použití přes 100.000 + aplikací – je to zdarma posílat neomezený počet push oznámení, pokud máte < 1 milion uživatelů (!!!- jejich pluginy a API jsou šíleně snadno použitelné
uděláme přehled několika dalších služeb, které máte k dispozici později v tomto kurzu, ale obecně je nastavení napříč těmito různými službami velmi podobné!
Příprava prostředí
další věc, kterou potřebujete vědět při vývoji pro iOS, Je to, že Apple vám nedovolí posílat oznámení push aplikacím spuštěným v emulátoru; musíte použít skutečné zařízení. Doporučujeme vyzkoušet všechny funkce, které push oznámení vyvolá v emulátoru, a poté, když je vaše aplikace postavena, budete muset aplikaci načíst na skutečné zařízení, abyste zajistili, že oznámení push jsou skutečně přijímána.
nastavení analýzy
Chcete-li tento projekt pracovat pro vaši aplikaci konkrétně, musíme vyměnit jedinečné klíče a identifikátory:
v tomto okamžiku by měl být váš projekt spuštěn! Existují opravdu jen dvě věci, které je třeba volat při použití Parse: initialize
, což zajišťuje, že toto zařízení je registrováno pro oznámení push, a subscribe
, které se přihlásí k odběru tohoto konkrétního telefonu na jakýkoli kanál, který poskytnete. K dispozici je také třetí metoda getInstallationId
, která vrátí ID instalace tohoto uživatele Parse, ale je to užitečné pouze v případě, že se hluboce ponoříte do některých pokročilejších funkcí Parse.
umožňuje rychlou chvíli zkontrolovat kód připojující naši aplikaci k analýze www/app.js
:
window.parsePlugin.initialize(appId, clientKey, function() { console.log('Parse initialized successfully.'); window.parsePlugin.subscribe('SampleChannel', function() { console.log('Successfully subscribed to SampleChannel.'); window.parsePlugin.getInstallationId(function(id) { // update the view to show that we have the install ID console.log('Retrieved install id: ' + id); /** * Now you can construct an object and save it to your own services, or Parse, and corrilate users to parse installations * var install_data = { installation_id: id, channels: } * */ }, function(e) { console.log('Failure to retrieve install id.'); }); }, function(e) { console.log('Failed trying to subscribe to SampleChannel.'); }); }, function(e) { console.log('Failure to initialize Parse.'); });
to není strašně složité se na to podívat, ale všimněte si, že je spuštěn po načtení všech aplikací Cordova v $ionicPlatform.ready
. To je důležité, protože nechceme volat metody window.parse
, pokud nám plugin Parse ještě není k dispozici! Další věc, kterou je třeba poznamenat, je, že tento kód bude vypálen při každém otevření aplikace. Můžete volat initialize
a subscribe
na stejný kanál tolikrát, kolikrát chcete, aniž by to ovlivnilo uživatele, váš účet Parse nebo APNS / GCM. Ve skutečnosti je pravděpodobně nejlepší, abyste to udělali, abyste zajistili, že uživatel náhodou nevypne oznámení push pro vaši aplikaci od posledního použití.
vzhledem k tomu, tato aplikace je nyní přihlášeni k odběru‘ SampleChannel ‚ analyzovat kanál, to znamená, že nyní můžeme posílat oznámení push to. Jak je vidět ve videu výše, můžete to provést pomocí panelu Parse Push tak, že jako cíl zadáte „SampleChannel“. Pokud však vytváříte aplikaci připravenou na výrobu, pravděpodobně budete chtít posílat oznámení push programově ze serveru prostřednictvím rozhraní API REST parse.
odesílání oznámení push prostřednictvím kanálů není skvělé pouze pro skupiny uživatelů,ale můžete také použít if pro jednotlivé uživatele. Můžete například programově vytvářet jedinečné kanály pro každého z vašich uživatelů tím, že je pouze přihlásíte k odběru kanálu s jejich ID uživatele připojeným ke konci (tj. window.parsePlugin.subscribe('thinkster-user-' + userID)
). I když se vaši uživatelé přihlásí na nových zařízeních, můžete jim i nadále posílat oznámení push tím, že znáte jejich ID uživatele!