ホームページ >テクノロジー周辺機器 >IT業界 >Webアプリケーションのプッシュ通知を構築する方法
この記事では、ネイティブアプリケーションと同様の通知関数を追加することにより、既存のWebアプリケーションのユーザーエクスペリエンスを改善する方法について説明します。 Webプッシュ通知の概念を詳細に説明し、現在の仕様とブラウザーのサポートをカバーする既存のWebアプリケーションにこの機能を統合する方法を徐々に示します。 この記事はもともとSenchaで公開されました。 SitePointをサポートしてくれたパートナーに感謝します。
コアポイント:
Web Push通知プロトコル
Webプッシュ通知プロトコルは比較的新しいものです。 Webアプリケーションにネイティブアプリケーションのような機能を提供し、Webアプリケーションがアクティブでないか、ブラウザにロードされていなくても、いつでもサーバーからプッシュメッセージを受信できるようにします。これにより、いつでもユーザーと対話することができ、アプリを使用していなくてもアプリに戻るように促します。
Webプッシュ通知の商業的価値は明らかです。ユーザーのエンゲージメントを増加させる可能性があり、アプリケーションの全体的な値を増やすことができます。各プラットフォームのネイティブアプリケーションを開発するのではなく、すべてのプラットフォームの単一のWebアプリケーションの開発に近づいています。
WebプッシュとWebSocketsの比較
技術的な詳細に入る前に、まずWebプッシュとWebSocketsの違いを理解しましょう。まず、いくつかの一般的なものがあります。WebプッシュとWebSocketsは、Webアプリケーションとアプリケーションサーバー間のリアルタイム通信を可能にし、アプリケーションサーバーからWebアプリケーションにリアルタイムデータと更新を送信するように設計されています。
次の違いは次のとおりです
技術的な概念
このテクノロジーの技術的な詳細を見てみましょう。特別なルール、参加者を備えたゲームを使用し、これらの詳細を説明します。最初に「Web Push通知」と呼ばれるこのゲームの参加者について説明します:
Push Serverは、ブラウザメーカーによって実装されたサービスです。アプリケーションサーバーからブラウザにメッセージを配信する責任があります。
ゲームデモWebプッシュ通知を使用
ゲームを使用して、アプリにWebプッシュ通知を追加する方法を示します。このゲームのルールは、World Wide Web Allianceとインターネットエンジニアリングタスクフォースによって提供される複数の仕様によって定義されます。
ゲームラウンド
ゲームを4ラウンドに分割し、各ラウンドの概念と目標を説明します。次に、アプリに各ターンを実装する方法を示します。
ラウンド1:サービスワーカー登録Webプッシュ通知は、サービスワーカーがプッシュメッセージを処理する必要があるため、最初のラウンドはサービスワーカーを登録することです。あなたのWebアプリケーションとブラウザのみがこのラウンドに参加します。このラウンドは、ページが読み込まれているときに発生します。
Webアプリケーションは、サービスワーカーが正常に登録されている場合、サービスワーカーを登録するリクエストを送信します。
まず、ブラウザがサービスワーカーをサポートしているかどうかを確認する必要があります。次に、ブラウザがWebプッシュ通知をサポートしているかどうかを確認する必要があります。ブラウザのサポートが増加すると、これら2つのチェックを追加することは常に良い考えです。
<code class="language-javascript">if ('serviceWorker' in navigator) { if ('PushManager' in window) { navigator.serviceWorker.register('ServiceWorker.js').then(function(registration) { // 状态初始化 }).catch(function() { // 错误处理 }); } else { // 错误处理 } } else { // 错误处理 }</code>
両方がサポートされている場合、サービスワーカーに登録します。これを行うには、navigator.serviceworker.register()メソッドを呼び出し、サービスワーカーファイルのパスをパラメーターとして渡します。このステップの後、ブラウザはファイルをダウンロードし、サービスワーカー環境で実行します。サービスワーカーファイルは標準のJavaScriptファイルですが、ブラウザはプッシュを含むサービスワーカーAPIに「アクセス」します。
すべてがうまくいかずエラーがない場合、Register()によって返される約束は解析されます。何らかのタイプのエラーが発生した場合、約束は拒否されます。この状況と、ブラウザがサービスワーカーをサポートしない状況に対処する必要があります。登録()の場合、次のターンで使用されるサービスワーカーレジストレーションオブジェクトを返します。
(後続のラウンドの指示は、コードの例、写真、説明など、上記の構造に類似した構造に従い、情報の整合性と読みやすさを維持するために元のテキストを書き直して磨きます。スペースの制限により、ここですべてのラウンドの詳細な説明は拡張されていません概要
Webプッシュ通知テクノロジーは、広く使用できるようになりました。緊急かつ関連する通知を提供することにより、ユーザーとより効果的にコミュニケーションを取り、ユーザーを関与させるのに役立ち、一般的にWebアプリケーションを改善します。 アプリで使用してみてください。 Sencha CMD 6.5は、次のプログレッシブWebアプリケーション機能をサポートしています。ホーム画面バナーに追加し、サービスワーカーのキャッシュを使用します。詳細については、Sencha CMDドキュメントを読むか、Sencha Ext JSの無料トライアルをダウンロードしてください。SenchaCMDを含む115を超えるコンポーネントとツールにアクセスできます。
(FAQSセクションでは、同様の書き換えと研磨も必要であり、ここでは拡張されません。)以上がWebアプリケーションのプッシュ通知を構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。