常见问题
如果本页面没能回答您的疑问,您可以去issues 区或 QQ 群 729013783 提问,或给我们发邮件。
业务问题
哪些修改可以热更新?哪些不能?
我们把对应用的修改分为两类:
-
不可热更新 —— 原生修改,即所有需要
编译
后才能生效的修改:- 任何在 iOS 或者 Android 目录中的修改、增删。
- 任何含有原生代码的第三方组件的更新、修改。
-
可以热更新 —— 非原生修改,即所有
无需编译
,刷新即可生效的修改:- js 代码修改,包括第三方纯 js 组件的更新、修改。
- 可以在 js 代码中 require/import 的资源文件,例如图片。
需要注意的是,即便资源文件可以热更新,但这些热更新后的资源文件会以file://
协议的形式提供访问,某些读取资源文件的第三方可能并不支持file://
协议。
我是否可以搭建自己的热更新服务?
你可以单独使用本组件的原生部分(不包括 js 模块)和命令行工具中的bundle
、diff
、diffFromIpa
、diffFromApk
四个功能。
这些功能都不会使用我们的热更新服务,也无需注册或登录账号。但你可能要编写自己的 js 模块来与不同的热更新服务器通讯。
如果您有兴趣搭建私有云服务,可以邮件联系我们。
XCode 编译时报错 "_BZ2_bzRead", referenced from 等
在工程 target 的 Build Phases->Link Binary with Libraries 中加入 libz.tbd、libbz2.1.0.tbd
热更新成功完成,但是重启后又回滚了是怎么回事?
可以正常更新,但是重启后回滚,一般有两种可能的情况:
- 没有正确配置 bundleUrl
- 没有正确调用 markSuccess
如果你确定上述两个步骤都正确无误,请在issues 区给我们留言反馈。
热更新报错:“此版本存在但编译时间戳不匹配。请勿以同一版本号重复打包”
当您每次编译产生一个原生包时,其中都会记录一个编译时间戳。如果您需要把这个包发给客户并希望使用热更新功能,那么就需要使用upload命令来上传到我们的服务器进行比对记录。
举例来说,假如我已经上传了一个1.0版本原生包(1A包
),但后来由于种种原因我又重新打包了(1B包
),此时有几种可能的情况:
- 我忘记上传过
1A包
,1B包
没有实质更改且还没有客户安装。此时应当放弃1B包
,只让客户下载安装1A包
。 - 我忘记上传过
1A包
,又生成了1B包
且已有客户安装。此时1A包
客户可以获取热更新,1B包
客户无法获取热更新。要使两批客户都能获取热更新,要么想办法通知1B包
客户装回1A包
,要么重新发布一个高于1.0
版本的原生包且上传到pushy服务器,并删除1.0
版本的记录,此时1A包
和1B包
的客户都会收到版本过期需要下载新版本的通知。 - 我知道上传过
1A包
,但我有原生方面的修改需要打了一个新的1B包
。此时若将1B包
上传到pushy服务器会提示版本验证错误,因为已经存在有相同的1.0
版本。所以需要首先更改原生版本号再次打包,并首先
将此新版本上传到服务器,然后
分发给客户。这样1.0版本
和新版本
可以并存且都可以获得热更新。
请谨记,任何时候生成原生包,请1)先修改原生版本号,2)并上传到pushy服务器,才可以正常获得热更新。
付费问题
我应该选择哪个业务版本呢?
其实完全无需考虑,先从最高配额的专业版开始体验(新用户注册验证通过后,将自动获得 7 天专业版
试用),各个版本功能完全一致!当试用时间到期后,若当前版本的配额不能满足需求,可随时补差价升级到更高配额的版本。升级自动按天数计算差价,绝无额外费用。
我可以试用付费版本先评估一下效果吗?
新用户注册验证通过后,将自动获得 7 天专业版
试用。如您需要更长的评估时间,可将注册用户名、邮箱、公司(或个人)名称发送至hi@charmlot.com,标题注明“pushy 评估试用延长”,我们会为您酌情延长评估时间。
配额具体如何计算?
配额主要分为 4 种:
- 可创建的应用数量,注意 iOS 和 Android 版本记做不同的应用。
- 原生包数量及大小。原生包指通过
pushy uploadIpa/uploadApk
命令上传到 Pushy 服务器上作为热更新起始版本的完整 apk/ipa 安装包。 - 热更包数量及大小。热更包指通过
pushy bundle
所命令生成的 ppk 文件。注意这不是用户实际下载的更新文件,用户下载的是通过比对生成的增量 diff 文件(比 ppk 文件要小得多)。 - 用户每日下载更新的次数。用户打开应用,检查到有更新,触发下载行为,记为一次(无论下载、更新成功与否)。
这里有一些对包大小的优化建议可供参考。
以上 2、3、4 条为针对每个应用单独计算。具体配额和费用由于运营成本可能会有调整,请以价格表页面为准。已购买的用户在续费前不受调整影响。
达到配额后还可以正常使用吗?
当应用、原生包、热更包数量达到配额限制后,您将无法执行相应的新增操作。但用户端仍可正常检查更新,下载已发布的更新。您可选择升级到更高配额,或是通过删除已不再使用的应用、原生包、热更包来使数量降低到配额以内,以便继续执行新增操作。
若原生包、热更包大小超过限额,则会导致上传失败。您可以选择升级到更高配额,或是想办法进行精简优化。
每日用户下载更新享受一定次数的高速通道满速下载,下载次数达到后将转入低速通道,次日恢复额度。
我可以单独升级某项配额吗?
我们暂时无法为某个单项配额提供升级选项,请选择更高版本的配额。如果专业版本配额仍然不能满足需求,请通过邮件hi@charmlot.com与我们联系,我们将根据您的个性化需求为您定制方案。
付费业务到期后不续费,现有应用还能否正常使用?
到期后按免费版额度执行。如您现有应用已超出配额,则必须通过删除操作降低到配额以内,方可执行新的操作(如创建应用,上传热更等),但不影响用户获取之前已发布的热更。
如何获取付费的专人技术支持?
请将您的用户名和订单截图发送至hi@charmlot.com,同时提供您希望的技术联系方式(QQ、微信等),核实后会有技术专员添加您为好友。
如何开具发票?
请将具体开票需求发送至hi@charmlot.com,并附上注册邮箱和订单截图。我们默认会回复电子发票到注册邮箱
,类目为咨询服务。如需指定接受邮箱或手机,请在邮件正文
中注明。如需要邮寄纸质发票请注明邮寄地址,邮费为到付。
可以使用银行转账付款吗?
可以的。请对照价格表,将对应版本的款项转账至:
公司名称 | 武汉青罗网络科技有限公司 |
---|---|
开户行名称 | 中国建设银行股份有限公司武汉吴南支行 |
账号 | 42050126693900000513 |
转账完成后请截图发送至hi@charmlot.com,并写明注册邮箱,我们将在一个工作日内开通对应服务。