微信小程序相比原生app应用的局限及应对办法
捆绑微信帐号
小程序打包后体积限制
目前是2M,并且在设计功能的时候并不知道是否会超过这个限制,而是到开发完成才会知道 另外,为了避免这种情况,小程序应当尽可能避免使用本地图片,全部使用网络图片为佳(加载需要时间,影响用户体验)。
缓存大小,单个存储最大为1M,所有缓存上限为10M
使用npm包有限制
目前我司框架层已基本解决该问题
调起部分本地应用
须当在一定规则下才可以打开本地应用
调用地图工具只支持gcj02坐标
消息推送
- 数据限制
- 无法在手机通知栏推送通知
部分原生接口无法调用
目前只能使用微信提供出来的几种调用原生方法的接口,相对较少,对于复杂应用略显乏力
页面层级不能超过10层
使用嵌入web页面的方式
首页最多5个标签页
除首页外的页面不支持原生的标签页
使用js实现假的标签页,用户体验受影响
一个原生页面最多只能嵌入一个web页面,且当嵌入web页面时无法使用其它组件,web页面会铺满整个页面
每个小程序帐号仅支持配置最多20个域名;
每个域名仅支持绑定最多20个小程序;
每个小程序一年内最多支持修改域名50次;
公众平台后台域名配置成功后,才可使用web-view组件。
直播 音视频流受限 基础库1.7.0开始支持
业务域名必须是HTTPS加密的
应用发布需经微信审核,版本更新有时会有延迟
修复紧急的bug时间上的延迟有可能会带来很大的经济损失
不能集成原生模块
市场成熟度不够,有些功能找不到实现,需要开发自己实现(考虑到开发周期,有些功能简直是不可能),开发成本较高
微信的开发工具不支持Linux,windows上的开发工具在迭代时经常会出各种奇怪问题
每年需要审核开放平台的帐户
1个公众号只能关联3个小程序
只支付微信支付
不支持虚拟支付
随腾讯的意
不定哪天推出个什么通知,应用就有下架的危险(即使是临时下架),对企业级应用影响大。