Dalam presentasi WWDC 2013 "What's New with Multitasking", ada bagian tentang Silent Push Notifications. Sepertinya lurus ke depan. Menurut presentasi, jika Anda mengirim payload APS hanya dengan set konten yang tersedia ke 1, pengguna tidak akan diberi tahu tentang notifikasi tersebut.
// A. This doesn't work
{
aps: {
content-available: 1
}
}
Pengujian saya menunjukkan bahwa ini tidak berfungsi karena tidak ada push yang diterima. Tetapi jika saya menyertakan atribut suara tetapi tidak menyertakan atribut peringatan, itu berfungsi (meski tidak diam lagi).
// B. This works
{
aps: {
content-available: 1,
sound: "default"
}
}
Namun, jika saya mengubah atribut suara untuk memutar audio senyap, saya dapat meniru dorongan diam.
// C. This works too.
{
aps: {
content-available: 1,
sound: "silence.wav"
}
}
Apakah ada yang tahu:
- Jika ini bug?
- Dan apakah benar untuk mengasumsikan bahwa B atau C diperlakukan sebagai Notifikasi Jarak Jauh (dan bukan bug dengan Silent Push di mana Anda memerlukan atribut suara)? Jika demikian, ini berarti kecepatannya tidak terbatas seperti Silent Pushes ... yang kemungkinan besar akan diperbaiki Apple. Jadi saya mungkin tidak harus mengandalkannya.
- Berapa batas kecepatannya (N mendorong setiap X detik, dll)?
Terima kasih sebelumnya.
Edit dengan lebih banyak informasi
Untuk A, status aplikasi tidak menjadi masalah. Pemberitahuan tidak pernah diterima.
Sepertinya B dan C hanya berfungsi jika Anda menyertakan atribut dan nilai dalam tanda kutip, seperti di bawah ini.
{"aps":{"content-available": 1, "sound":"silent.wav"}}
Dan pemberitahuan tersebut tiba di application: didReceiveRemoteNotification: fetchCompletionHandler: apa pun statusnya .