Per quelli di noi che hanno aspettato, principalmente affinché le nostre istanze di Discourse funzionino meglio su iOS, sembra che il giorno sia vicino, poiché Apple ha annunciato ufficialmente oggi il supporto per le notifiche push web in iOS 16, in arrivo nel 2023.
C’è una presentazione a riguardo domani:
Qui ci sono maggiori dettagli sull’implementazione.
https://webkit.org/blog/12824/news-from-wwdc-webkit-features-in-safari-16-beta/
Le notifiche push web stanno arrivando su Safari 16 su macOS Ventura. Questo ti consente di inviare notifiche da remoto agli utenti dei tuoi siti web e delle tue app web, e di recapitare tali notifiche anche quando Safari non è in esecuzione. Utilizza la stessa combinazione di standard web che potresti già conoscere da altri browser: Push API e Notifications API, insieme a Service Worker.
Gli utenti scelgono di ricevere le notifiche indicando prima interesse tramite un gesto dell’utente, come fare clic su un pulsante. Quindi, verrà loro richiesto di concedere l’autorizzazione al tuo sito o alla tua app per inviare notifiche. Gli utenti potranno visualizzare e gestire le notifiche nel Centro Notifiche, e personalizzare gli stili e disattivare le notifiche per sito web nelle Impostazioni Notifiche.
Se hai già implementato le notifiche push web per la tua app web o sito web utilizzando le best practice del settore, queste funzioneranno automaticamente su Safari. Tuttavia, se hai escluso Safari tramite il rilevamento del browser, dovrai passare al rilevamento delle funzionalità per farle funzionare.
Le notifiche push web su Safari utilizzano lo stesso servizio Apple Push Notification che alimenta le notifiche push native su tutti i Mac e dispositivi iOS. Se gestisci strettamente gli endpoint di push sul tuo server, assicurati di consentire gli URL da qualsiasi sottodominio di push.apple.com. Non è necessario essere membri dell’Apple Developer Program.
E cerca le notifiche push web per iOS e iPadOS nel 2023.
Safari su macOS ha avuto notifiche push web non standard fin dal 2013, ma non ha mai funzionato per iOS prima d’ora.
Questo annuncio sembra semplicemente indicare che Safari su macOS passerà a un’API basata su standard in Safari 16, il che è positivo, ma se desideravi le notifiche push per Safari su macOS, puoi già implementarle oggi.
Il supporto per iOS sarà il vero punto di svolta.
Ti sono grato per aver fornito informazioni più dettagliate su questo!
Qualcuno sa come questo influenzerà le istanze di Discourse? Presumo che significherà che quando qualcuno salva un sito web nella schermata principale, consentirà all’utente di ricevere notifiche da quella PWA di Discourse, è vero?
Inoltre, questo consentirà a DiscourseHub di inviare notifiche push iOS a tutte le istanze di Discourse al suo interno?
No, questa funzionalità non ha nulla a che fare con l’installazione nella schermata principale o con le “PWA”.
“PWA” è un termine di marketing inventato dagli sviluppatori di Google; il termine si riferisce a un insieme di funzionalità:
- aggiungi alla schermata principale (A2HS)
- supporto offline, in modo che il sito/app continui a funzionare quando sei offline
- funzionalità simili a quelle native (funzionalità che in passato erano esclusive delle app native), inclusi push, bluetooth, recupero in background, ecc.
Ma le funzionalità non hanno intrinsecamente nulla a che fare l’una con l’altra. Puoi avere una qualsiasi di queste funzionalità senza le altre.
- Puoi aggiungere qualsiasi pagina web alla tua schermata principale. La pagina web non deve avere supporto offline o funzionalità simili a quelle native per A2HS. (In realtà è solo l’aggiunta di un segnalibro alla schermata principale; questo è tutto ciò che fa A2HS.)
- Puoi abilitare il supporto offline per il tuo sito web indipendentemente dal fatto che tu utilizzi o meno A2HS.
- Non ci sono funzionalità simili a quelle native che richiedono l’uso di A2HS o l’uso del supporto offline. WebBluetooth funziona su qualsiasi pagina web, purché l’utente accetti una finestra di dialogo per i “permessi”; non è necessario A2HS per attivarlo.
Oggi, in Google Chrome e nella versione attuale di macOS Safari 15, i siti web possono visualizzare una piccola finestra di dialogo di richiesta, chiedendo il permesso di inviare notifiche push. (Devi farlo in un gestore di “click” o in risposta a un simile “gesto dell’utente” come trascinare o scorrere.) Probabilmente hai visto questi popup sui siti di notizie di tanto in tanto.
Il post sul blog di Apple sembra indicare che nulla cambierà riguardo al prompt dei permessi in Safari 16:
Gli utenti acconsentono alle notifiche indicando prima interesse attraverso un gesto dell’utente, come fare clic su un pulsante. Quindi, verrà chiesto loro di concedere l’autorizzazione al tuo sito o alla tua app per inviare notifiche.
Questa domanda è confusa. È quello che Discourse Hub fa già oggi.
Penso che ci sia stato qualcosa di sbagliato nelle mie impostazioni di notifica sul mio iPhone, dove non arrivavano:
Ah, bello! Quindi le persone potrebbero ancora ricevere le notifiche senza A2HS, sembra fantastico, grazie.
Avevo l’impressione che le notifiche iOS in Discourse Hub funzionassero solo per le istanze di Discourse ospitate dal team di Discourse, come da messaggio sottostante. È cambiato?
Come spiega il thread che hai collegato, Discourse Hub può inviare notifiche push per qualsiasi sito Discourse, anche quelli non ospitati dal team Discourse, ma invia notifiche live (istantanee) solo per i siti ospitati dal team Discourse. Se aggiungi un sito non ospitato a Discourse Hub, riceverai notifiche, ma con una pianificazione più lenta.
Tuttavia, non credo che sia ciò a cui si riferisce la domanda, ma potrei aver frainteso:
Discourse Hub può già inviare notifiche push iOS da tutte le istanze Discourse al suo interno. I siti non ospitati inviano notifiche più lentamente, ma le inviano.
Ahh speravo davvero che i siti self-hosted potessero inviare notifiche immediate. Forse il ritardo nelle notifiche mi ha confuso riguardo al fatto che fossero attualmente inviate o meno.
Detto questo, sono entusiasta che iOS 16 dovrebbe abilitare quelle immediate per i siti Discourse self-hosted ![]()
Grazie per il chiarimento. Sono principalmente interessato alle notifiche push iOS in tempo reale, non alle notifiche recuperate tramite polling.
“WKWebView” è l’API di Apple per incorporare un browser web in un’app nativa; Discourse Hub utilizza WKWebView. Per quanto ne so, le attuali notifiche push proprietarie di Safari 15 per macOS non funzionano in un WKWebView su macOS.
Apple rende alcune funzionalità simili a quelle native disponibili solo nell’app Safari, non in un WKWebView, e talvolta nemmeno nelle pagine web salvate nella schermata Home, che tecnicamente vengono eseguite in un processo separato “Web.app” su iOS.
Non sappiamo ancora se la nuova API Push standard funzionerà in un WKWebView (quindi non sappiamo se funzionerà in Discourse Hub), e certamente non sappiamo se l’API Push funzionerà in un WKWebView su iOS, che non verrà nemmeno rilasciata nel 2022.
Tuttavia, dovrebbero essere disponibili maggiori dettagli nella presentazione di domani.
Per tua informazione, è tipico che gli Apple Evangelist si rifiutino di rispondere pubblicamente a ulteriori domande sulle funzionalità simili a quelle native sul web.
Considera questa domanda posta su Twitter:
Apple ha risposto alle domande di Maximiliano durante il giorno, ma, uh, per qualche motivo, solo questa domanda è rimasta senza risposta! ![]()
Oh cielo, adoro questo livello di dettaglio, grazie per averlo scritto. Speriamo che funzioni su WKWebView in iOS e nelle app della schermata Home ![]()
Sono contento di vedere che non sono stato l’unico a guardare quella keynote. ![]()
Non sono sicuro del perché non debutterà con la prima versione di iOS 16, ma vabbè…
Non era già disponibile su macOS? Sono anni che riesco a ricevere notifiche push di Safari da MacRumors. Forse stavano usando una soluzione alternativa di qualche tipo? ![]()
Come ho detto nel mio post precedente:
Ah, mi dispiace. Non ero del tutto sicuro di cosa intendessi con questo. ![]()
C’era pochissimo dettaglio nel video di oggi. Meet Web Push for Safari - WWDC22 - Videos - Apple Developer
WebKit ha pubblicato un post sul blog oggi.
Qui sono disponibili maggiori dettagli.
\u003chttps://developer.apple.com/documentation/usernotifications/sending_web_push_notifications_in_safari_and_other_browsers\u003e
Al Safari WWDC lounge, un utente “John” ha posto una domanda: “Il web push funzionerà nelle istanze WKWebView?” La risposta di “Brady E” di Apple è stata:
\u003e Su macOS Ventura, Web Push è supportato solo in Safari 16.
John ha fatto un follow-up: “e iOS/iPadOS?” al che Brady ha risposto: “Cerca il supporto per iOS/iPadOS nel 2023.” Quindi, oggi non stanno rispondendo a nessuna domanda sul supporto iOS.
Mi sembra estremamente improbabile che le notifiche Web Push funzionino in un WKWebView nel 2023, specialmente su iOS, quindi mi aspetto che Safari Web Push non porterà alcun beneficio diretto a Discourse Hub.
Ma, naturalmente, l’app Discourse Hub sarà molto meno importante quando arriverà Safari Web Push.
Grazie per aver seguito questo con Apple e per aver scritto un seguito qui ![]()
Ci sono alcuni altri vantaggi dell’applicazione Discourse Hub.
Hai in gran parte ragione, comunque. Diventerà parzialmente obsoleto abbastanza presto. Mi chiedo se CDCK lo abbandonerà del tutto… ![]()

A proposito, non ci sono piani per abbandonare l’app mobile, è ancora molto utile poter aggregare tutti i tuoi siti e notifiche di discourse in un unico posto, separatamente dalla ricezione di notifiche in tempo reale
Avrebbe senso portare Discourse Hub sul web come PWA?
Purtroppo non è qualcosa che abbiamo in programma al momento, ma è qualcosa che personalmente mi piacerebbe vedere, è un’ottima idea ![]()