手把手🫳教你怎么打包uni app发布到App Store
前言
之前开发H5和Android端时可以直接通过云打包生成APK文件或上架Google Play需要的aab文件,最近需要将项目打包发布到苹果的App Store上,由于云打包生成的是.ipa文件,并不能上传到苹果的开发者后台进行上架App Store审核,需要通过Xcode编译后上传进行审核,于是决定使用本地离线打包,在这里我将记录一下从申请证书到审核通过的过程。
2024-07-26 补充
Mac用户可以通过Transporter直接上传.ipa文件
Transporter可以通过App Store下载,登录后直接拖入上传即可,有小概率卡住
.ipa文件可通过HbuilderX的IOS云打包生成,证书请看“环境及必要信息”的第3条
环境及必要信息
1、Xcode
由于Xcode只能在Mac上下载,所以需要使用Mac电脑进行操作
网上似乎有一些教程或者第三方的软件或网站可以替你打包或提供环境,但是毕竟涉及到代码的上传,有泄露风险
2、苹果开发者账号并且加入了iOS Developer Program
3、证书
如果你之前使用过HbuilderX的IOS云打包,那你一定申请过iOS的证书,如果你还没有证书,那么需要先申请,可以参考uni app官方的教程(ask.dcloud.net.cn/article/152…
生成离线打包资源
打开HBuilderX,导入你的项目,然后点击发行 => 原生App-本地打包 => 生成本地打包App资源
打包完成后在控制台会有一个文件存放的路径,点击打开后会显示一个文件夹,文件夹的名字是__UNI__XXX,XXX和APPID一致
下载离线打包SDK
你需要访问nativesupport.dcloud.net.cn/AppDocs/dow… 下载uniapp官方提供的SDK包
下载解压后有一个名称为HBuilder-Hello文件夹,注意这个文件夹里面包含了一个名为HBuilder-Hello.xcodeproj的文件
注意!!!
文件夹里还有一个
HBuilder-Hello的文件夹,不要弄错了,我们要的是第一层的HBuilder-Hello文件夹,就是文件夹里面有HBuilder-Hello.xcodeproj的文件夹
如果怕后面弄错了,建议可以复制一份到其他地方
导入SDK文件
打开XCode,选择File => Open 将刚刚的HBuilder-Hello导入
替换项目文件
将HBuilder-Hello => HBuilder-Hello => Pandora => apps => __UNI__33C5XXX文件夹删除,替换成刚刚HBuilderX打包生成的__UNI__XXX替换进去,XXX是Appid,不知道这个文件的往前面翻一翻
替换离线打包Key
打开dcloud开发者后台 dev.dcloud.net.cn/
在我的应用中找到对应的应用,点击后找到各平台信息(原本是离线打包Key,现已迁移),点击右上角的新增,新增一条IOS的离线打包Key,其中iOS BundleId填在Apple开发者后台中Identifiers标识符对应的APP的IDENTIFIER(具体看下图3),生成后查看,并将获取到的Key记录下来
打开HBuilder-Hello => HBuilder-Hello => Supporting Files => HBuilder-Hello-Info.plist文件,搜索dcloud_appkey这一项,将值改为刚刚记录的值
修改control文件
将appid改为uniapp项目中manifest.json文件中的appid,appver改为manifest.json文件中的versionName(应用版本名称)
修改APP配置
点击左侧边栏第一个HBuilder-Hello,然后选择TARGETS,选择General,找到Identity
点开uniapp的manifest.json文件,切换到源代码模式
App Category 可以不用填,默认None即可; Display Name:manifest.json的name字段; Version:manifest.json的versionName字段; Build:manifest.json的versionCode字段;
最后Bundle Identifier如果无法填写,可以点击右侧的箭头,点击后会打开另一个选项卡Siging,Siging分debug和release,填写两个包名,填写完成后将Team改为自己(注册的开发者账号),Provisioning Profile改为自己的打包,如果不知道这个文件是什么,Import的时候选中之前申请打包证书的那几个文件,哪个亮了选哪个,在这我就示范一下debug的填写,release的填写也是一样的。
如果Team无法填写,导入Profile之后会自动填写
注意!!!
如果你不打算发布在
Ipad、Mac、Apple Vision中,请你在Supported Destinations选项中选中并Delete掉,否则审核会比较麻烦
打包上传
完成以上步骤后,点击菜单栏中的Product => Archive
打包完成后在弹出的弹窗中选择Distribute App,最后选择App Store Connect,然后Distribute,等待上传即可
填写审核资料
再次打开苹果开发者中心,选择App
点击TestFlight查看代码时候提交上来了 这里有一点延迟,在XCode上推送了,但是要等几分钟这里才有显示 
在TestFlight中能看到你提交的代码后,点击分发,然后填写资料,在构建版本中选择我们刚刚提交的代码版本,点储存后提交审核即可,接下来就是耐心等待审核,审核通过后会发邮件到你的邮箱里
Tips:在填写App预览的时候,如果你没有其他尺寸的手机,可以使用模拟器截图(如何打开模拟器请往下翻),如果模拟器截图的尺寸不符合,可以截图后用PS改,如果你不会PS,请使用PhotoShop,或者Adobe PhotoShop
常见问题
没有其他尺寸手机怎么截图审核?
可以使用XCode自带的Iphone模拟器
打开步骤如下:
如果不会运行,还有更简单的方法
在XCode中正上方,点击设备名后会展开一排设备,选择IOS Simulator下的设备,然后左上方点击一下长的跟播放按钮一样的按钮,运行到指定的设备
点击这里截图,然后保存到桌面或者其他文件夹,截图出来的图片是没有边框的,就跟真实的手机截图的一样
结束语
看到这,相信你已经成功发布了一个属于自己的IOS APP,如果过程中你遇到了其他报错,或者文章缺少了某个步骤,欢迎你留言告诉我。
链接:https://juejin.cn/post/7377283135127650343
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
TP源码网 » 手把手🫳教你怎么打包uni app发布到App Store




























