Cordova "Lite" Build which skips the local server & simply loads a remote URL #11508
Replies: 2 comments 2 replies
-
I like this idea in general and would prefer it over implementing an independent "Meteor-Cordova" - Wrapper. |
Beta Was this translation helpful? Give feedback.
-
Hey @DanielDornhardt, I understand from where your idea is coming from but I would like to dig a little bit in the problem here. It seems to me that you are having a few issues with current Meteor/Cordova integration and also HCP after your app is live on stores and as a way to solve your problems you are thinking about a new way to deliver the app code to your native app. It seems to be a good idea but I believe you would lose a lot of benefits and in the end you would need to write a bunch of workarounds (like an offline mode) that will end up in a very similar solution (and maybe the same problems). Could you be more specific about your issues with the current integration and HCP? For example, did you already check this package https://github.com/quavedev/reloader ? I wrote it last year in order to give the developer more flexibility handling HCP updates. Maybe enhancing the current solutions we could have a better final result instead of trying to create a new solution. |
Beta Was this translation helpful? Give feedback.
-
Hi,
tl;dr:
Create a cordova-lite - build for people wo don't need or want an offline mode with anything too fancy.
Make the cordova build create a lighter shell wrapper & load the external app URL instead of downloading the app to the local server.
We would actually be willing to sponsor somebody competent to have a look at this & maybe work with us to develop a prototype. Get in touch if you're interested. (Is there a good place to put code sponsorships like this with any chance of it taking off?)
/tl;dr
The cordova webapp-package sometimes creates issues for of us when implementing certain behaviours & also because of the kind of hard to control the update cycle between the built apps from the app stores and the "soft" HCP version served by the meteor server.
Maybe it'd be simpler for us to just have the cordova app load the current app from our app URL and to have a simple hook / callback / page to handle the offline case (we can actually already do that once the app has been loaded using the
Meteor.connection.status()
reactive functions).So there is a value for an initial version of the app being available, if only for us to be able to show the "not connected" status! :D But maybe there could be a workaround for that. Either with a default - configurable Page and/or mini-app or some other mechanism...
(I am actually not that well versed in the PWA space, but the PWA / Progressive Web App Approach using a worker to load & update ressources might be something to look at there too).
Of course the devil's in the details and there might be some things which I haven't considered, but that's always the case.
The build complications, the wrestling with the HCP & planning and syncronizing updates across a device population of a certain size + the server makes the whole deployment process harder for us than it needs to be.
Of course it'd be great if crowd favourites like
Meteor.isCordova
could be implemented as well.One issue are the existing meteor packages which might rely on a)
Meteor.isCordova
and/or b) other "advanced" Meteor Cordova Features.That would be something to look at & take into account of course.
But basically, this "simpler" wrapper would allow us to deploy more often and with less headaches.
So, what do you think? Good Idea? Stupid? Interesting? Valuable?
What did I miss / didn't think off? What else does the Meteor Cordova Webapp mechanism provide I might have forgotten about? Which other issues would need to be to be addressed?
Could this be done in a package? What kind of patching would there be needed in the Meteor Core?
Or maybe we can create a separate, simpler "Meteor-Cordova" - Wrapper - Project which could be used to wrap a meteor project, but doesn't use the full meteor build system? (The problems I see here are existing meteor packages not able to access the Meteor.isCordova - flag / code not being included from the
package.js
-api.addFiles('...', 'cordova')
) - sections. Some things to chew on.Thanks and best
Daniel
Beta Was this translation helpful? Give feedback.
All reactions