Our company has native apps for iOS and Android. One of our goals is to bring people back to our apps frequently, and to spend a lot of time in our apps. (The app stores seem to prioritize apps that get a lot of usage.)
We have a pretty solid Discourse forum, but currently we just link out to the forum’s website from the app. iOS users who want to receive forum push notifications then have to download the Discourse app separately. (Android users can receive push notifications directly from the website, which is great, but in that case, they’re still using the website, and not our app.)
We’d like to make the Discourse forum a part of our existing iOS and Android apps, and especially to allow users to receive forum push notifications in our apps, without forcing people to download a separate app or to leave our app to use the forum. (I’m imagining that the implementation would be a web view, much like the Discourse iOS app.)
Is there a way to do something like this today? (I’m guessing not?)
On Android the story is quite simple, spinning up a Chrome Custom Tab is super easy and it shares authentication with Chrome. Only big downside and reason our Android team members avoid using the Android app (and that we are considering killing the Android app) is cause opening a Chrome Tab is slow compared to PWA, so people prefer the PWA.
Being Android though you could possibly automate creating the PWA link and all that Jazz from your app which may be interesting.
On iOS the story is more complex due to Apple bugs.
I read somewhere that Chrome 72 now support Trusted web activities , which means you can now distribute PWAs in the Google play store. If it works well I think you will have more reason to kill the Android app.
Let me give one good reason not to: some people do not have a Google account and won’t have one. If the app would be distributed over F-Droid, it would be fine, but forcing people into Google is not a friendly move.
Très curieux de savoir où cela a abouti. Quelqu’un a-t-il pu intégrer Discourse dans son application mobile via webview et profiter des notifications ?
Cela arrive de temps en temps, nous maintenons une poignée d’applications en marque blanche pour les clients.
Malheureusement, le coût de cette approche est énorme. Je dirais… envisagez cette approche si vous avez un budget annuel de 20 000 USD pour la construction/la maintenance/le débogage.
@sam merci pour les mises en garde, car je m’apprête à me lancer dans ce projet.
J’ai été encouragé de voir que le hub de discussion semble déjà faire cela - pourquoi anticipez-vous un coût aussi élevé ? J’imaginais que vous aviez juste besoin de faire fonctionner la vue web et l’authentification, puis que les notifications seraient un plus appréciable. Ce serait une fonctionnalité géniale à ajouter à mon application déjà existante, mon équipe a déjà travaillé sur des vues web.
Y a-t-il quelque chose que je n’anticipe pas qui causera beaucoup de travail / de mises à jour ?
Historiquement, j’ai vu l’effort consacré à la vue web triviale de Discourse Hub.
En surface, c’est « facile », mais ensuite, vous devez vous soucier de 1000 petits détails.
Réduire le panneau en bas
La courbe sur l’iPhone
Indicateurs de chargement
Mises à jour constantes de la vue web
Vérifications de sécurité Apple et processus d’approbation des applications
Débogage complexe… que se passe-t-il si quelque chose se produit dans la vue web et pas sur le site
Ce n’est même pas une liste exhaustive, je suis sûr que @pmusaraj et @kris.kotlarek peuvent en ajouter 20 autres.
Les applications sont très difficiles à bien faire et très coûteuses. De nos jours, la seule justification solide pour en créer une est pour iOS, et ce n’est pas un parcours facile.
J’ai initialement posé cette question parce que je voulais retenir les utilisateurs dans mon application, car je pense qu’Apple et Google nous enverront du trafic gratuit.
Cette tâche est-elle plus facile (ou plus difficile ?) dans un « Chrome Custom Tab » pour Android ?
Est-il plausible que vous proposiez une bibliothèque pour iOS qui encapsule un WKWebView et résolve ce problème pour nous ? (Il semble que vous ayez déjà géré plus de 90 % du travail en implémentant Discourse Hub.)
Je dirais qu’Android est difficile de manière « différente ». Surtout que le système d’exploitation lui-même ne fournit pas les primitives. Il est très difficile de justifier les efforts là-bas alors que la PWA est tout simplement si bonne sur Android.
Nous utilisons React Native et des composants pour encapsuler WKWebView. La complexité demeure malheureusement. Les mises à jour de React Native peuvent également être assez douloureuses à gérer d’après l’historique.
@sam ma justification pour me lancer là-dedans concerne vraiment les notifications push, et aussi parce que j’ai une application existante qui permettrait facilement à mes membres de faire plusieurs choses au même endroit (étudier pour leur examen, discuter dans la communauté, acheter, etc.).
Mais, il semble que je pourrais leur faire ajouter l’application communautaire en tant que PWA, et ils pourraient recevoir des notifications push et des mises à jour ? La PWA aurait-elle des notifications push ? Mise à jour : j’ai trouvé la réponse ici, il semble qu’elle ne prenne pas en charge les notifications push.
J’examine davantage l’option PWA - peut-être que je pourrais même ajouter un lien vers « Rejoindre la discussion communautaire » dans mon application native existante, et ce serait le bon lien pour télécharger la PWA ?