Recommended way to add new cordova plugin to production Cordova app?

I have a mobile app built using Cordova. It is already distributed through App Store and Play Store. I’m adding a functionality which requires new Cordova plugin.

If I deploy the code to the server before the users download new release from App Store or Play Store, the app will fetch new code which tries to use a plugin which doesn’t exist.

So, is my only option to upload new release to App Store and Play Store, and just hope that people upgrade their (native) apps before opening the app after deploying new version to server?

I’m like 99% sure Meteor handles this for you and simply won’t push the new code to the old app. @martijnwalraven can you confirm?

1 Like

Yes, Meteor 1.3 will block hot code push if any of the native dependencies have changed. See this section of the guide for more details.

2 Likes

That sounds wonderful! It means that I’m going to dramatically increase the priority of upgrading from Meteor 1.2 to 1.3. Thanks for the advice!

1 Like

I was going to get Meteor 1.3 in production, but unfortunately I bumped into a few problems that prevented me from doing that. To be able to put new implementations in production, I need to continue with 1.2 for a while.

To maintain backwards compability, it would be easiest solution to prevent autoupdate. However, I can’t remove autoupdate package. What is the suggested way to prevent autoupdate? I don’t want to prevent the reload, but rather disable prevent autoupdate completely.

PS. Is hot code push exactly the same as autoupdate?

What issues have you ran into while updating to 1.3. I think it would be worth your time to upgrade meteor as the updates to mobile/Cordova are worth it. I struggled updating our app to 1.3 from 1.2, but it definitely worth it in the end.

1 Like

@npolet: I also think that Meteor 1.3 is totally worth it but I have been jammed with Meteor 1.3 for weeks, and I had to reimplement all new features on top of Meteor 1.2 to be able to release an update.

I really hope that I could release the next update built on top of Meteor 1.3. Most of the problems are just a pain in the ass during development, but white screen of death is a blocker that prevents me from releasing update built on top of Meteor 1.3. I have pasted some relevant logs here.

If someone has good ideas, I’d be more than happy to hear about them! :slight_smile: