2014-11-17 25 views
5

Uygulamanın arka planda güncellenmesine izin vermek için IOS için sessiz push bildirimleri içeren bir projeye yeni başlıyorum. Şimdiye kadar belirsiz olan bir temel nokta, kullanıcı push mesajlaşmayı tamamen reddederse ne olur? Bu, sessiz push bildirimlerinin uygulama tarafından alınmasını reddediyor mu, yoksa sadece aygıtın mesajları kullanıcıya görsel/işitsel olarak göstermemesine neden oluyor mu?ios Kullanıcı itme yetkisini reddettiğinde ios sessiz push bildirimi

Elmanın, bir uygulamaya yalnızca izin verildiğinde çalışmadığı kurallar olduğunu biliyorum, ancak bu durumu en iyi şekilde nasıl kullanacağımı merak ediyorum.

cevap

0

Düzenleme: Açıklamalarda belirtildiği gibi, sessiz bildirimler kullanıcı izni tarafından etkilenmez. Dikkat etmeniz gereken tek şey, bildirim formatıdır:

Sessiz bir bildirimin gönderilmesi, bildirimin yükünün özel bir yapılandırmasını gerektirir. Yükünüz doğru şekilde yapılandırılmamışsa, bildirim uygulamanıza arka planda teslim edilmek yerine kullanıcıya gösterilebilir. senin yük, aşağıdaki koşulların doğru olduğundan emin olun:

  • payload en aps sözlüğü 1 değeriyle content-available anahtarı içermelidir.
  • payload en aps sözlüğüalert, sound veya badge anahtarları içermez gerekir.

    Bu

Source Apple


öncesi iOS 8 sürümleri için eski cevap doğruydu (ve hala burada konu değildir görünür bildirimler içindir):
kullanıcı varsa uzak bildirimleri reddediyor, bu kapı kapalı. Teknik olarak kendi arka plan hizmetinizi düşünebilirsiniz, ancak bu arka planda sürekli olarak çalışmalıdır, örn. sürekli GPS kullanımı ile (kötü fikir).

Daha iyi bir seçenek, kullanıcıyı zamanında doğru zamanda kabul etmeye ve sormaya ikna etmektir. Bu makale hakkında düşünmeniz gereken bir kaba yön vermem: http://techcrunch.com/2014/04/04/the-right-way-to-ask-users-for-ios-permissions/

+1

Bu cevap yanlıştır. Sessiz bildirimler, kullanıcının izin ayarları ne olursa olsun teslim edilir. –

+1

Ayrıca buradan kontrol edebilirsiniz: https: //www.urbanairship.com/blog/watch-list-ios-8-opt-in-changes –

+0

kullanıcı BOTH 'Background App yenilemesini' devre dışı bırakır ve bildirimleri devre dışı bırakırsa teslim edilmez. Bkz. [Burada] (https://stackoverflow.com/questions/42275060/what-is-difference-between-remote-notification-and-silent-notification-in-ios/42302369#42302369). Sonra sadece ön planda teslim edilecekler. Simge kaydının yalnızca rozet, uyarı, ses gibi aynı kullanıcı iznine gerek duymadığından emin olursunuz. Ancak, uygulamanın belirli aralıklarla dönemsel olarak alınabilmesi için, bu izinlerden birini etkinleştirmeniz gerekir. – Honey

0

Kabul edilen yanıt yanlış.

Sessiz bildirimler, kullanıcının push bildirimleri için izin vermiş olup olmadığına bakılmaksızın teslim edilir. iOS tvOS ve watchos yılında

, uygulamalar, uyarılar gösterilecek sesleri oynatmak veya gelen bildirimlere yanıt olarak uygulamanın simgesini rozet yetkisine sahip olmalıdır. Yetkilendirme istemek, isteğinizi kabul edebilecek veya reddedebilecek olan, kullanıcının elindeki bu etkileşimlerin kontrolünü sağlar. Kullanıcı, uygulamanızın yetki ayarlarını daha sonra sistem ayarlarında da değiştirebilir.

Kaynak: Apple's Developer Documentation

+0

kullanıcı, BOTH 'Background App yenilemesini' devre dışı bırakır ve bildirimleri devre dışı bırakırsa teslim edilmez. Bkz. [Burada] (https://stackoverflow.com/questions/42275060/what-is-difference-between-remote-notification-and-silent-notification-in-ios/42302369#42302369). Sonra sadece ön planda teslim edilecekler. Simge kaydının yalnızca rozet, uyarı, ses gibi aynı kullanıcı iznine gerek duymadığından emin olursunuz. Ancak, uygulamanın belirli aralıklarla dönemsel olarak alınabilmesi için, bu izinlerden birini etkinleştirmeniz gerekir. – Honey

İlgili konular