iOS 10 より前のプッシュ通知 API では、プッシュ通知の受信によってトリガーされるバックグラウンド ジョブを簡単に実行できました。受け取ったばかりです -- ユーザーはそれを操作する必要はまったくありませんでした。この新しいフレームワークで同じバックグラウンド ジョブを実行するには、ユーザーが何らかの方法で通知を操作する必要があるようです。この新しいフレームワークを使用して、特定のプッシュがクライアント デバイスによって受信されたばかりで、ユーザーが操作していないときにバックグラウンド ジョブを実行する方法はありますか? プッシュのユーザー情報辞書にメソッドを渡すことはできますか?
質問する
567 次
1 に答える
3
フレームワークでは直接動作しないが、UserNotifications
プッシュ通知を介して iOS 10 でバックグラウンド ジョブを実行できるソリューションを見つけました。
を使用するUIApplicationDelegate
と、実際には、以前の iOS バージョンで使用されていたのと同じ機能を使用して、プッシュ通知を介してバックグラウンド ジョブを実行できることがわかりました。
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))handler{
//execute the background job here
}
content-available
送信する前にプッシュにフラグを 追加し、 1 に設定するだけです。
js の場合は次のようになります。
data: {
alert: "Some alert",
type: someType,
"content-available": 1,
id: someId
}
于 2016-09-21T01:30:19.150 に答える