2014-11-17 28 views
5

Sto avviando un progetto con notifiche push silenziose per IOS, per consentire all'app di aggiornarsi in background. Un punto fondamentale che non mi è chiaro finora è cosa succede se l'utente rifiuta interamente la messaggistica push? Rifiuta le notifiche push silenziose dall'essere ricevuta dall'app o fa sì che il dispositivo non visualizzi i messaggi all'utente visivamente/udibilmente?ios notifica push silenziosa quando l'utente rifiuta Autorizzazione push

Mi rendo conto che Apple ha delle regole che un'app non dovrebbe funzionare solo se è permessa la spinta, ma sono curioso di come gestire al meglio questa situazione.

risposta

0

Modifica: Come indicato nei commenti, le notifiche invisibili non vengono influenzate dalle autorizzazioni dell'utente. L'unica cosa di cui devi occuparti è il formato delle notifiche:

L'invio di una notifica silenziosa richiede una configurazione speciale del carico utile della notifica. Se il tuo payload non è configurato correttamente, la notifica potrebbe essere visualizzata all'utente anziché essere consegnata alla tua app in background. Nel vostro carico, assicurarsi che le seguenti condizioni sono vere:

  • dizionario aps del carico deve includere la chiave content-available con un valore di 1.
  • dizionario aps del payload deve non contenere le chiavi alert, sound o badge.

Source Apple


Questa è stata la mia risposta vecchio vero per le versioni 8-iOS pre (ed è ancora per le notifiche visibili, che non sono argomento qui): Se l'utente nega le notifiche remote, questa porta è chiusa. Tecnicamente puoi pensare al tuo servizio in background, ma questo deve essere eseguito costantemente in background, ad es. tramite l'uso continuo del GPS (cattiva idea).

Un'opzione migliore è convincere l'utente ad accettare e chiedere al momento giusto nel tempo. Questo articolo dovrebbe darti un'idea approssimativa su cosa pensare: http://techcrunch.com/2014/04/04/the-right-way-to-ask-users-for-ios-permissions/

+1

Questa risposta non è corretta. Le notifiche silenziose vengono fornite indipendentemente dalle impostazioni di autorizzazione dell'utente. –

+1

Puoi anche verificarlo qui: https: //www.urbanairship.com/blog/watch-list-ios-8-opt-in-changes –

+0

non vengono consegnati se l'utente disattiva ENTRAMBI "Aggiornamento app in background" e disabilita le notifiche. Vedi [qui] (https://stackoverflow.com/questions/42275060/what-is-difference-between-remote-notification-and-silent-notification-in-ios/42302369#42302369). Quindi verranno consegnati solo in primo piano. Hai solo ragione che la registrazione del token non richiede la stessa autorizzazione utente del badge, alert, sound. Tuttavia, affinché l'app possa essere recuperata dallo sfondo periodicamente, è necessario abilitare entrambe le autorizzazioni. – Honey

0

La risposta accettata non è corretta.

Le notifiche silenziose vengono fornite indipendentemente dal fatto che l'utente abbia autorizzato o meno le notifiche push.

In iOS, tvOS e watchOS, le app devono disporre dell'autorizzazione per visualizzare avvisi, riprodurre suoni o contrassegnare l'icona dell'app in risposta alle notifiche in entrata. La richiesta di autorizzazione mette il controllo di tali interazioni nelle mani dell'utente, che può concedere o rifiutare la richiesta. L'utente può inoltre modificare le impostazioni di autorizzazione per l'app in un secondo momento nelle impostazioni di sistema.

Fonte: Apple's Developer Documentation

+0

non vengono consegnati se l'utente disattiva ENTRAMBI "Aggiornamento app in background" e disabilita le notifiche. Vedi [qui] (https://stackoverflow.com/questions/42275060/what-is-difference-between-remote-notification-and-silent-notification-in-ios/42302369#42302369). Quindi verranno consegnati solo in primo piano. Hai solo ragione che la registrazione del token non richiede la stessa autorizzazione utente del badge, alert, sound. Tuttavia, affinché l'app possa essere recuperata dallo sfondo periodicamente, è necessario abilitare entrambe le autorizzazioni. – Honey