ホームページ >ウェブフロントエンド >uni-app >uniappでiOS通知を実装する方法
スマートフォンの普及に伴い、携帯電話用アプリケーションが徐々に増加しており、ユーザーにリアルタイムで通知するために、オペレーティング システムにはメッセージ通知機能が提供されています。中でもiOSは世界のスマートフォン市場で重要なシェアを占めており、その通知機能が注目を集めています。 uniappフレームワークでiOS通知機能を実装するにはどうすればよいですか?
1. iOS 通知の基礎知識
通知とは、アプリケーションを開いたり閉じたりしたときにシステム レベルでポップアップ表示されるプロンプト メッセージを指します。 iOS の通知は、ローカル通知とリモート通知の 2 種類に分類されます。ローカル通知はアプリケーションによって直接トリガーされますが、リモート通知はサーバーによって APN (Apple Push Notification サービス) に送信されます。
ローカル通知は、アプリケーションの実行中に表示される UNUserNotificationCenter クラスの add メソッドを呼び出すことで追加できます。これには主に次のメソッドが含まれます:
// 配置通知内容 const content = { title: '通知标题', body: '通知内容', userInfo: {"key": "value"} // 附加数据 }; // 创建通知 const notification = { identifier: 'local-notification', // 首次显示时的标识符 content: content, trigger: { repeats: false // 只显示一次 } }; // 添加通知 uni.addLocalNotification(notification);
リモート通知は主に次のものに依存します。完了する APN と通知の内容 構築とプッシュは両方ともサーバー側で行われます。
2. uniapp は iOS ローカル通知を実装します
uniapp は、各プラットフォームに適した統合 API をカプセル化します。iOS でローカル通知を実装したい場合は、UNUserNotificationCenter クラスの add メソッドを呼び出す必要があります。通知を公開します。 uniapp プロジェクトでは、uni.addLocalNotification メソッドを直接呼び出してローカル通知を実装できます。
uni.addLocalNotification メソッドを呼び出すときは、通知の内容とトリガー時間を含むオブジェクトを渡す必要があります。このうち、通知内容にはタイトル、内容、および任意の追加情報を含める必要があります。トリガーのタイミングは、時間、場所、ネットワーク状態の 3 つの方法に分けられます。このうち、時間トリガーでは、通知をループするかどうかを制御するために、repeats 属性を設定する必要があります。
実装プロセス中は、次の問題に注意する必要があります。
次は例です:
/** * 在指定时间触发通知,如果应用在前台则不展示 */ function setNewLocalNotification() { const now = new Date(); const nowStr = now.toLocaleTimeString(); console.log(`当前时间:${nowStr}`); const hour = now.getHours() + 1; console.log(`下小时:${hour}`); const alarmTime = new Date(); alarmTime.setHours(hour, 0, 0); // 设置下个小时整点触发 console.log(`触发时间:${alarmTime.toLocaleTimeString()}`); let id = 1; uni.addLocalNotification({ title: 'uniapp', body: '时间到了', userInfo: {"key": "value"}, // 可附加数据 trigger: { date: alarmTime, repeats: false }, identifier: `${id++}`, }); console.log('添加闹钟成功'); }
3. ブリッジ ファイルをインポートします
ローカル通知を実装する場合、アプリケーションの Info に対していくつかの構成を行う必要があります。プリスト。この部分の実装にはブリッジ ファイルをインポートする必要があるため、次の操作を実行する必要があります:
1. Xcode で uniapp プロジェクトを開き、[Build Phases] > [Copy Bundle Resources] を選択します。
2. ディレクトリ内の「com.apple.UNNotificationFramework.framework」ファイルを Nut Cloud のアプリケーション エクスプローラーにドラッグします。
3. Info.plist ファイルに通知承認リクエストの記述情報を追加します。内容は次のとおりです:
<key>NSUserNotificationAlertStyle</key> <string>alert</string> <key>NSUserNotificationEnabled</key> <string>YES</string> <key>NSUserNotificationCenterAlertsEnabled</key> <string>YES</string> <key>UIBackgroundModes</key> <array> <string>fetch</string> <string>remote-notification</string> </array> <key>UNNotificationsUsageDescription</key> <string>请允许我们发送通知</string>
4. まとめ
この記事では、 uniapp を使用して iOS ローカル通知メソッドを実装します。ローカル通知を追加すると、アプリケーションが実行されていないときでも、ユーザーにプッシュ メッセージを送信できます。実装プロセス中は、権限の取得とブリッジ ファイルのインポートに特別な注意を払う必要があります。
以上がuniappでiOS通知を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。