179 lines
4.9 KiB
Markdown
179 lines
4.9 KiB
Markdown
![]() |
## Mall4j 商城 IOS 打包文档
|
|||
|
|
|||
|
文档源自 [uniapp 官方离线打包文档](https://nativesupport.dcloud.net.cn/AppDocs/),如有出入以官网文档为准
|
|||
|
|
|||
|
### 准备工作
|
|||
|
|
|||
|
[苹果开发者平台](https://developer.apple.com/) 账号,需要加入苹果开发计划,创建App,申请证书,描述文件等
|
|||
|
|
|||
|
注册Dcloud账号,登录后台创建应用并申请离线打包 [Appkey](https://nativesupport.dcloud.net.cn/AppDocs/usesdk/appkey)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
### 开发环境
|
|||
|
|
|||
|
macOS Monterey 及以上 (可用虚拟机)
|
|||
|
|
|||
|
Xcode 13 及以上版本
|
|||
|
|
|||
|
HbulidX
|
|||
|
|
|||
|
App离线SDK下载 [最新iOS平台SDK下载](https://nativesupport.dcloud.net.cn/AppDocs/download/ios)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
### SDK目录说明
|
|||
|
|
|||
|
```
|
|||
|
|-- HBuilder-Hello 给用户打uni-app项目的离线打包工程
|
|||
|
|-- Feature-iOS.xls 配置表(依赖的库、资源文件、参数配置等)
|
|||
|
|-- SDK 工程需要的库文件,.h头文件,配置文件,资源文件
|
|||
|
```
|
|||
|
|
|||
|
- 详细说明:[App离线SDK内不同文件的作用](https://nativesupport.dcloud.net.cn/AppDocs/usesdk/iOSReadMe)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
### 配置工程
|
|||
|
|
|||
|
下载离线SDK压缩包,解压;用 Xcode 打开 HBuilder-Hello 项目
|
|||
|
|
|||
|
|
|||
|
|
|||
|
#### 配置Appkey
|
|||
|
|
|||
|
打开 HBuilder-Hello -> Supporting Files -> HBuilder-Hello-Info,找到 dcloud_appkey,填入appKey
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
#### 生成本地打包app资源
|
|||
|
|
|||
|
用 HbulidX 打开项目,选择菜单 发行 -> 原生App-本地打包 -> 生成本地打包App资源
|
|||
|
|
|||
|
或执行命令 npm run build:app-ios 编译
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
#### 导入打包资源到xcode
|
|||
|
|
|||
|
把生成好的本地打包app资源复制到 xcode 项目目录下的 Pandora -> apps 路径下,替换掉原来的
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
#### 修改 control.xml 文件
|
|||
|
|
|||
|
打开 Xcode 工程Supporting Files -> control.xml文件修改 appid 值,改成和manifest.json里面的id一样
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
#### 修改应用信息
|
|||
|
|
|||
|
按图示箭头从左往右依次点击 HBuilder-Hello -> TARGETS 下的 HBuilder
|
|||
|
|
|||
|
在General下修改应用名称、包名、版本名称、版本号
|
|||
|
|
|||
|
Display Name是app名称
|
|||
|
|
|||
|
Bundle Identifier为苹果的AppID
|
|||
|
|
|||
|
Version为应用版本号,在App Store中显示的版本号,推荐与manifest.json中version下的name值一致;
|
|||
|
|
|||
|
Build为编译版本号,App Store判断升级使用,推荐与manifest.json中version下的code值一致。
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
##### **修改app名称**
|
|||
|
|
|||
|
即使修改了Display Name,打包后的app名称依然是"Hbuilder你好";需要改一下 InfoPlist.strings 下面的 CFBundleDisplayName 为应用名字,InfoPlist.strings(English)为英文系统应用名,Simplified为中文简体系统应用名
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
##### **修改app图标**
|
|||
|
|
|||
|
按图示箭头从左往右依次点击 HBuilder-Hello -> TARGETS 下的 HBuilder
|
|||
|
|
|||
|
在General下 找到 App Icons and Launch Images 点击小箭头
|
|||
|
|
|||
|

|
|||
|
|
|||
|
在 HBuilderX 中打开 mainfest.json,在 App图标配置中 使用自动生成图标功能,然后把生成的图标拖动到 xcode 中 Images 对应的每个大小的位置中 即可完成配置
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
##### **配置应用签名**
|
|||
|
|
|||
|
配置 xcode 自动签名:
|
|||
|
|
|||
|
打开 xcode 配置,切换到 Account 选项,添加已完成签名申请的苹果开发者账号
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
如图示打开 Signing & CapaBilities,勾选 "Automatically manage signing",选择一下 Team(如果没有的话,创建一个),填一下Bundle Identifier
|
|||
|
|
|||
|

|
|||
|
|
|||
|
签名常见错误1
|
|||
|
|
|||
|

|
|||
|
|
|||
|
切换到选择卡“Build Settings” 搜索签名 “Signing” ;
|
|||
|
然后在列出的代码签名标识中把值设置为 “Apple Development”;
|
|||
|
|
|||
|
签名常见错误2
|
|||
|
|
|||
|

|
|||
|
|
|||
|
切换到选择卡“Build Settings” 搜索签名 “ Provision”,(快捷键command+delete)删除User-Defined下面的PROVISIONING_PROFILE
|
|||
|
|
|||
|
|
|||
|
|
|||
|
### 第三方模块配置
|
|||
|
|
|||
|
项目目前使用到模块/第三方SDK包含 定位、微信支付、支付宝支付、视频播放。
|
|||
|
具体配置方法可参考uniapp官网 [模块/三方SDK配置介绍](https://nativesupport.dcloud.net.cn/AppDocs/usemodule/iOSModuleConfig/common)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
### 打包上传
|
|||
|
|
|||
|
点击 Xcode 中部项目名称,设置编译配置,选择 Any iOS Device (arm64, armv7)
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
点击 Product 菜单,Archive 选项
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
待编译完成后会自动弹出 Archives ,点击 右上角 Distribute App ,准备上传
|
|||
|
|
|||
|
Archives 弹窗可通过 Window -> Organizer 菜单打开
|
|||
|
|
|||
|

|
|||
|
|
|||
|
|
|||
|
|
|||
|
后续的弹窗一路 next ,最后签名完毕后点击 upload 上传
|
|||
|
|
|||
|

|
|||
|
|