[解決済み] iOS 7 の Silent Push Notification が動作しない。
2023-05-14 22:19:54
質問
WWDC 2013 のプレゼンテーションの中で、「マルチタスクの新機能」(") というセクションがあり、サイレント プッシュ通知について説明されています。 これは簡単なことのように思えます。 プレゼンテーションによると、content-available を 1 に設定しただけの APS ペイロードを送信すると、ユーザーには通知が行われないとのことです。
// A. This doesn't work
{
aps: {
content-available: 1
}
}
私のテストでは、プッシュが受信されないため、これは機能しません。 しかし、sound 属性を含み、alert 属性を除外すると、動作します (ただし、無音ではなくなっています)。
// B. This works
{
aps: {
content-available: 1,
sound: "default"
}
}
しかし、sound属性を変更して無音音声を流すようにすると、無音で押す真似ができるようになります。
// C. This works too.
{
aps: {
content-available: 1,
sound: "silence.wav"
}
}
誰か知っていますか。
- これはバグですか?
- また、BまたはCがリモート通知として扱われている(サウンド属性が必要なSilent Pushのバグではない)と考えるのが正しいのでしょうか?もしそうなら、Silent Pushのようにレート制限されていないことになります...これはAppleが修正する可能性が高いです。 というわけで、おそらく当てにしないほうがいいと思います。
- レート制限とは何ですか (N 個のプッシュを X 秒ごとに、など)?
事前にありがとうございます。
より詳細な情報で編集する
Aの場合、アプリケーションの状態は関係ありません。 通知が届くことはありません。
BとCは、以下のように属性と値を引用符で囲んだ場合のみ動作するようです。
{"aps":{"content-available": 1, "sound":"silent.wav"}}
そして、通知が届くのは application:didReceiveRemoteNotification:fetchCompletionHandler に到着します。 は状態に関係なく
どのように解決するのですか?
これも動作し、到着時に音は鳴りません。
{
aps = {
"content-available" : 1,
sound : ""
};
}
EDIT
この問題を抱えている人は、以下をチェックするとよいでしょう。 このリンク . 私は Apple の開発者フォーラムで、すべてのアプリの状態と、サイレント プッシュを受信したときと受信しないときについて説明するスレッドに参加しています。
関連
-
iOS classic error Undefined symbols for architecture XXX:
-
制御が非ボイド関数の終了に達する
-
dyld: ライブラリがロードされていません。エラーの解決
-
[解決済み] UIViewに角丸をつける
-
[解決済み] UIDevice uniqueIdentifierは非推奨 - どうしたらいいの?
-
[解決済み] UITextFieldのテキストインセット?
-
[解決済み] UITableView - トップにスクロールする
-
[解決済み] iOS 11、Apple TV 4Kなどを搭載したXcode 9でワイヤレスデバッグを行う方法とは?
-
[解決済み】iOSは、ユーザーによって強制終了されたアプリをバックグラウンドで起動するのでしょうか?
-
[解決済み] プッシュ通知で起動したアプリをデバッグする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[iOS]コンパイルエラー:ld: アーキテクチャ x86_64 のシンボルが見つかりません。
-
[解決済み] iOSのステータスバーの文字色を変更する方法
-
[解決済み] Xcode 7のエラーです。"Missing iOS Distribution signing identity for ..." (iOS配布用署名IDがありません)
-
[解決済み] UITableViewの下にある余分なセパレータをなくす
-
[解決済み] UIViewController のビューが表示されているかどうかを確認する方法
-
[解決済み] iPhone UITextField - プレースホルダーの文字色を変更する
-
[解決済み] UINavigationBarの1px下の行を非表示にする方法
-
[解決済み] NSNotificationCenterのaddObserver in Swift
-
[解決済み] Swift 3でディスパッチキューを作成する方法
-
[解決済み】iOSは、ユーザーによって強制終了されたアプリをバックグラウンドで起動するのでしょうか?