iOS上Meteor 1.8 Cordova应用程序中的热代码推送失败

时间:2018-12-19 18:44:26

标签: ios cordova meteor

热码推送未更新Meteor Cordova应用程序的iOS用户。如果我将.png,字体或其他资源添加到我的应用程序并将其推送到服务器,则Android用户将获得HCP更新,而iOS用户则不会。

一些用户报告说,这甚至是由于升级到Meteor 1.8而没有更改任何资产引起的。

我无法获得iOS客户的任何代码更新。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

这是流星Cordova插件中的一个已知问题,该问题使热代码推送(HCP)发生。正如我在此处链接的Meteor论坛中所讨论的那样,因为链接稳定并且讨论时间长,问题是由于__cordova/manifest.json包含每种资产的重复版本,其中每个版本都带有 __ cordova 在“网址”字段中,而在字段中没有 __ cordova 。 Webapp插件会尝试在HCP期间将两个版本复制/移动到手机上的更新中,而第二个版本(作为资产的副本)失败,因为该资产已经存在,因为该资产刚刚由资产的第一个实例进行了更新清单中的资产。

您可以通过以下方法解决此问题:将资产放在CDN中而不是在/ public目录中的本地,然后相应地在代码中更改对它们的引用,但是如果Meteor升级到1.8进行资产更新,那将无法解决,对于某些用户来说似乎如此。

您还可以应用https://github.com/meteor/cordova-plugin-meteor-webapp/pull/59此处提供的解决方法错误修复程序,但这需要更新应用程序的iOS手机版本,以便用户可以获取此修复程序,此时,您还可以在iOS更新可以解决该问题,但是您已经拥有了将来的HCP可以使用的修复程序。

详细信息: