1. 理解Uniapp打包的核心概念
第一次接触Uniapp打包时,我也被各种包类型搞得晕头转向。经过几个项目的实战,终于理清了这些概念的本质区别。简单来说,Uniapp打包主要产出三种包:APK、IPA和WGT。这三种包的关系就像装修房子,WGT是软装材料,APK/IPA则是带硬装的完整房子。
APK是Android系统的安装包,相当于Windows的exe文件。我在实际项目中遇到过这样的场景:当需要新增相机权限时,就必须重新打包APK。IPA则是iOS系统的安装包,由于苹果的封闭生态,打包流程比Android复杂得多。最特殊的是WGT资源包,它只包含业务代码和静态资源,不涉及原生配置。实测下来,WGT包体积通常只有完整安装包的1/10,这对用户更新非常友好。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 两种更新方式的实战选择
2.1 热更新(WGT资源包)
热更新是我最推荐的日常更新方式。具体操作是在HBuilderX中选择"发行->制作移动App资源升级包"。这里有个坑要注意:版本号必须大于当前版本,否则更新会失败。我通常用这样的命名规则:v1.0.0.20230701,最后一段是日期戳。
热更新的核心优势是用户无感知。后台可以配置静默更新策略,用户下次打开App时自动生效。但要注意这些限制:
- 不能修改manifest.json中的基础配置
- 不能新增原生插件
- iOS需要提前配置ATS白名单
2.2 整包更新(APK/IPA)
当需要修改应用图标、启动页或新增系统权限时,就必须走整包更新流程。Android端相对简单,直接打包新APK上传到CDN即可。但iOS端要特别注意,TestFlight审核通常需要1-3天,我建议预留足够的时间缓冲。
这里分享一个实用技巧:在manifest.json中配置versionCode时,Android建议用数字递增(如1001),iOS则要符合App Store的版本规范(如1.0.1)。这个细节不注意可能导致商店审核被拒。
3. Android上架全流程解析
3.1 应用商店打包
国内Android市场碎片化严重,主流商店就有十多个。我的经验是优先覆盖华为、小米、OPPO、vivo和应用宝这五大渠道。每个商店都需要:
- 注册开发者账号(企业认证)
- 准备软著证书(现在审核越
