简体   繁体   中英

How to fix MeteorWebApp error: “Skipping downloading new version because the Cordova platform version or plugin versions have changed …”?

I have an error when i run my app in my android device with:

meteor run android-device --settings settings.json --mobile-server=myip:port

I have deployed my app in my VPS with MUP (Meteor up). The app in my device seems work good and is able to communicate with my VPS but i have this error:

E/MeteorWebApp(30703): Download failure

E/MeteorWebApp(30703):com.meteor.webapp.WebAppException: Skipping downloading new version because the Cordova platform version or plugin versions have changed and are potentially incompatible I20160524

E/MeteorWebApp(30703): at com.meteor.webapp.WebAppLocalServer.shouldDownloadBundleForManifest(WebAppLocalServer.java:367)

E/MeteorWebApp(30703): at com.meteor.webapp.AssetBundleManager$1.onResponse(AssetBundleManager.java:131)

......

When I run with --verbose i have:

D/MeteorWebApp( 4032): Detected new bundled version, removing versions directory if it exists

My meteor project use:

  • Meteor 1.3.3-beta.0

  • cordova-android@5.1.1

  • cordova:cordova-plugin-device v1.1.2

Have you tried re-enabling android plaform:

meteor remove-platform android
meteor add-platform android

It solved my problem:

I20160729-21:30:01.571(2)? 07-29 21:30:01.342 10346 11702 E MeteorWebApp: Download failure
I20160729-21:30:01.572(2)? 07-29 21:30:01.342 10346 11702 E MeteorWebApp: com.meteor.webapp.WebAppException: Skipping downloading new version because the Cordova platform version or plugin versions have changed and are potentially incompatible
I20160729-21:30:01.572(2)? 07-29 21:30:01.342 10346 11702 E MeteorWebApp:   at com.meteor.webapp.WebAppLocalServer.shouldDownloadBundleForManifest(WebAppLocalServer.java:367)

For the record, this error is an intentional behaviour of Meteor .

The idea is to block Hot Code Push when the Cordova version (or one of the Cordova plugins version) has changed, or if new Cordova plugins have been added to the Meteor project. The rationale is to prevent new code from reaching a device that will not be able to use it, because it will lack the associated Cordova plugins / versions (remember those cannot be updated through Hot Code Push , but need a traditional update through App Store / Play Store).

There should be an option to force Meteor to proceed with the Hot Code Push no matter what, but I cannot find documentation on it unfortunately. I think a help message appears in the console during build when such a situation occurs (new Cordova plugins).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM