iOS 免签打包——不花钱也能出 IPA 安装包
什么是 iOS 免签
正常发布 iOS APP 的流程:
你 → Apple Developer Program($99/年)→ Xcode 签名 → IPA → App Store Connect → 审核 → App Store
PakePlus 的"免签"能力绕过了 Apple Developer Program 和 App Store Connect——不需要付费账号、不需要审核,直接生成一个未签名或自签名的 IPA 文件。
PakePlus 移动端技术栈
和 Android 一样,PakePlus iOS 也不走 Tauri 路线:
| 组件 | 实现 |
|---|---|
| UI 框架 | 原生 iOS(Swift / Objective-C) |
| Web 容器 | WKWebView(Safari 渲染引擎) |
| 打包 | Xcode + 原生工具链 |
iOS 打包步骤
1. 切换到移动端配置页面
软件配置页面右上角手机图标 → 移动端配置页面。
2. 填写移动端配置
| 字段 | 说明 |
|---|---|
| APP 显示名称 | 用户在桌面看到的名字 |
| Bundle Identifier | iOS APP 唯一标识符,格式:com.example.myapp |
| 版本号 | 遵循 SemVer |
| APP 图标 | 1024×1024 PNG,PakePlus 自动生成多尺寸 |
| Source URL / dist 目录 | 和桌面端配置相同 |
3. 云端打包
iOS 编译必须在 macOS 上进行(Apple EULA 限制)。PakePlus 云端模式自动处理——GitHub Actions 的 macOS Runner 上装好了 Xcode:
- fork 仓库的 iOS 编译 workflow 被触发
- 在 macOS Runner 上用 Xcode 原生框架编译
- 生成 IPA 文件
- 上传到 GitHub Release
4. 本地打包
本地打包 iOS IPA 只能在 macOS 上(需要 Xcode 环境)。PakePlus 本地打包会自动检测当前系统,如果是 macOS 可以出 iOS 包。
免签 IPA 的安装方式
免签 IPA 不能直接发到 App Store,需要通过第三方工具或企业渠道安装到 iOS 设备上:
方式一:AltStore / Sideloadly(最流行)
| 工具 | 原理 | 费用 | 稳定性 |
|---|---|---|---|
| AltStore | 用你的 Apple ID 签名 IPA(免费的个人开发者签名) | 免费 | 每 7 天重签一次 |
| Sideloadly | 同上,操作更简单 | 免费 + 付费版 | 同上 |
步骤:
- 下载 AltStore 或 Sideloadly
- 连接 iPhone 到 Mac(AltStore 需要 Mac;Sideloadly 支持 Windows)
- 用你的 Apple ID 登录工具
- 把 PakePlus 生成的 IPA 拖进去
- 工具自动签名 → iPhone 上安装完成
- 每 7 天需要重新签名一次(Apple 免费开发者签名的限制)
方式二:企业分发(需要 Apple Enterprise 账号)
| 项目 | 说明 |
|---|---|
| 费用 | $299/年 |
| 签名有效期 | 1 年 |
| 安装方式 | 下载 IPA + 配置描述文件 |
| 风险 | Apple 可能吊销企业证书 |
如果公司已经有 Apple Enterprise 账号,可以用企业证书签 PakePlus 的 IPA——安装后不会过期(除非证书被吊销)。
方式三:TestFlight(最正规的测试渠道)
如果你有 Apple 开发者账号($99/年):
- 用 PakePlus 生成 IPA
- 用 Xcode 或 Apple Configurator 上传到 App Store Connect
- 分给内部测试人员(最多 100 台设备)或外部测试人员(最多 10000 人)
- TestFlight OTA 安装,无需数据线
iOS 特有注意事项
最低系统版本
| iOS 版本 | PakePlus 兼容性 |
|---|---|
| iOS 14+ | ✅ 支持 |
| iOS 13 | ⚠️ 部分新 API 可能不可用 |
| iOS 12- | ❌ 基本不支持 |
建议目标最低 iOS 14,覆盖绝大多数现代 iPhone/iPad。
WKWebView 的限制
iOS 的 WKWebView 有一些比 Android WebView 更严格的限制:
| 能力 | WKWebView | Android WebView |
|---|---|---|
| localStorage 跨域 | ✅ 支持 | ✅ 支持 |
| file:// 协议下 fetch | ❌ iOS 13 后部分限制 | ✅ 支持 |
| 播放本地视频 | ⚠️ 需要手动授权 | ✅ 支持 |
| 原生 API 调用(非 Tauri) | 受限 | 较宽松 |
iPhone 尺寸预设
PakePlus 移动端配置页面里有窗口模式选择:
- iPhone(390×844,iPhone 12/13/14 标准尺寸)
- iPad(820×1180,iPad Air 尺寸)
- Android(412×915,Android 标准尺寸)
iOS 打包时建议用 iPhone 模式。
签名与证书
PakePlus 文档明确说:
打包仅限个人使用,请勿传播或商业用途。
免签 IPA 的分发能力本身就很受限(需要第三方工具 + 7 天重签),加上 PakePlus 的条款限制——iOS 免签只适合个人使用和小范围测试,不是正规发布渠道。
为什么 PakePlus 不负责签名
签名需要:
- Apple 开发者账号($99/年或 $299/年)
- Xcode 证书管理
- Provisioning Profile 配置
- 构建配置里嵌入签名信息
这些是 Apple 生态的硬性要求——任何打包工具都无法绕过,PakePlus 也不例外。PakePlus 的"免签"是指帮你省掉了原生框架编译的步骤,签名这一步需要你自己通过第三方工具或企业账号搞定。
与 Android 打包的对比
| 维度 | Android APK | iOS IPA |
|---|---|---|
| 免签 | ✅ 默认就是 debug 签名 | ✅ PakePlus 自动处理 |
| 第三方安装 | ✅ 允许未知来源 | ⚠️ 需要 AltStore/Sideloadly |
| 免费开发者限制 | 无明确 7 天限制 | 7 天重签 |
| 云端编译 | Linux Runner + Android NDK | macOS Runner + Xcode |
| 正规分发 | 应用商店 | App Store(需要 $99 账号) |
| 本地编译 | Windows/Mac(可选) | 仅 macOS |
总结
PakePlus iOS 打包是个人开发者零门槛出包的利器——不想花 $99/年开发者账号、不想装 Xcode,点一下云端发布等几分钟就能拿到一个 IPA。但它不适合正规渠道分发——真要上 App Store 还是得走 Apple 正规流程。