[游戏开发][Unity] 打包Xcode工程模拟器+真机调试

目录

发布流程看我另一个链接

[游戏开发][Unity] IOS调试与发布-CSDN博客[游戏开发][Unity] IOS调试与发布https://blog.csdn.net/liuyongjie1992/article/details/136836480

Xcode版本:Xcode14

本文中会出现的名词有

苹果开发者账号、相关设备cer证书、开发者证书、发布证书

苹果开发者账号

账号分三类,个人,公司,企业,价格99/99/299美金

新注册账号的基本设置按网上的教程来就行

我们公司是企业账号,我的苹果开发者账号是公司一个User,这个和个人开发者不同。

账号还是非常重要的,要登记设备,以及添加项目信息。生成相关的证书文件并提供下载。

相关设备cer证书

先用大白话讲一下cer证书是什么,cer证书是开发者账号官网登记的设备密钥文件。

首先你作为开发人员,肯定得有Mac打包机、iphone手机两台机器对吧,这两台机器需要到苹果开发者官网登记,Mac电脑需要创建CertificateSigningRequest.certSigningRequest,iphone则是查看设备号,用这俩东西去官网登记设备,并返回两个cer文件,如下图所示

 分别双击这俩cer文件,就会把设备以及开发者添加到钥匙串访问中,如下图

 下面是一个比较全面的登记设备以及返回cer文件的文章

iOS证书(p12)获取解密公私钥icon-default.png?t=N7T8https://blog.csdn.net/qiuziqiqi/article/details/113347001?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-4-113347001-blog-129500228.235%5Ev38%5Epc_relevant_sort_base2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-4-113347001-blog-129500228.235%5Ev38%5Epc_relevant_sort_base2&utm_relevant_index=9

开发者证书与发布证书

首先,获得开发者证书和发布证书的前提是,在开发者账号官网配置好项目信息,之后就可以下载这两个证书,如下图所示:开发者证书名字里带dev,发布证书带dis,文件类型都是mobileprovision

这俩证书有啥用???在Xcode工程中,必须选择开发者证书才能真机调试!!!

然后,发布项目必然要用到发布证书

Unity打包Xcode工程

打包要注意模拟器版本和真机版本,这个网上教程很多,我就不详述了

注意bundle名,version 以及TargetSDK是模拟器还是Device真机

打开Xcode工程(模拟器工程)

模拟器工程打开后长这个样子:

 请注意红色箭头位置,选择对应的模拟器版本,直接运行,运行会自动创建对应的模拟器,在屏幕上类似一个手机

打开Xcode工程(真机调试工程)

 看红框部分,我的打包机上插着iphone手机,所以能直接显示出来,没显示手机设备的同学手动去选择。

打开Xcode的 buildSetting

如果是默认armv7,要选成arm64

 Build Options -- Enable Bicode选择No,可以在右上角筛选栏搜索bitcode

自动签名、手动签名二选一

下面是一篇详细介绍Provisioning Profile的文章,如果是手动签名,可能得去下载这个文件。

iOS 开发 Provisioning Profile(描述文件) 详解_上进求知,认真思辨的博客-CSDN博客iOS 开发 Provisioning Profile(描述文件) 详解1.Provisioning Profile 的概念'Provisioning Profile' 文件包含的内容:'证书'、'App ID' 和 '设备 ID'。一个 Provisioning Profile 对应一个 ‘Explicit App ID’ 或 Wildcard App ID(一组相同 Prefix/Seed 的_provisioning profilehttps://blog.csdn.net/kuangdacaikuang/article/details/52984398

简单看一下该文件包含写什么信息

提示:用户的Library文件夹默认是隐藏的,需要用访达-前往文件夹打开

路径:/Users/hailong/Library/MobileDevice/Provisioning Profiles

提示:把hailong改成你自己的用户名即可打开

 

下面介绍自动签名

 选择工程并点击下图按钮打开描述文件管理界面

 默认情况下,Team那一栏肯定是None,然后会提示你去选择,

现在都是用Automatically manage signing,自动管理签名,当你选择Team的那一瞬间,它会自动去下载描述文件,就是上文中提到的Provisioning Profile文件夹。如果没有报红,证明描述文件配置正确。
如果有报错,大概率是提示你要去BuildSetting设置Signing -- Code Signing Identity

手动签名:

 把开发者证书导入进来,这里有三个报错,这个错不用管,是我子账号的报错。如果有其他报错,例如让你修改Build Setting,按照报错提示修改就好了。

 

设置Xcode工程的BundleVersion

和Unity工程保持一致,之前好像因为这个版本号不一致导致加载有问题 

点击运行按钮,真机调试

点击运行,在红框位置会显示编译进度(百分比进度),编译成功后显示正在往手机中copy,最后会显示我截图中的样子

如果是首次真机安装包,会自动帮你打开APP,如果非首次则不帮你打开,但都会开启调试窗口,就是截图中白色的log,可以手动把白色窗口拉大,方便查看信息,

 正好这里有从StreamingAsset加载AB包的报错,截图给大家展示一下如何用Xcode调试自己的报错,其实和Unity看Log差不太多,有报错原因,调用堆栈。

解决StreamingAsset加载的Bug

通过Debug.LogError发现,打AB包的文件清单在Application.StreamingAsset找不到,邪了门了,不过真机调试有个好处,就是可以查看手机包里的内容,操作如下:

 

 

 找到你向保存的路径,点击save

我保存的位置是文稿,app数据扩展名是.xcappdata

鼠标右键,显示包内容

PersistantAssetts路径: /Users/hailong/Documents/com.zmtm.hqhy 2023-08-08 11:46.06.xcappdata/AppData/Documents/master

StreamingAsset路径看不到,但是可以打印出来

其实不用关心StreamingAssets文件夹,因为它是个只读文件夹,不允许写入,因此你可以看一下Xcode工程中的Data--Raw文件夹,它就是你Unity的StreamingAssets文件夹,如下图,我的Unity

 

 可以看到,Xcode工程的Data--Raw文件夹和我Unity工程的StreamingAssets文件夹文件保持一致

报错记录:

编译过程报错,

1、link library缺失

2、bitCode未关闭

真机启动时报错

 dyld: Symbol not found: __ZTTNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
  Referenced from: /private/var/containers/Bundle/Application/2F8A91D5-E2B7-4264-A004-1FCF0EC770BB/hqhy.app/hqhy
  Expected in: /usr/lib/libc++.1.dylib
 in /private/var/containers/Bundle/Application/2F8A91D5-E2B7-4264-A004-1FCF0EC770BB/hqhy.app/hqhy
dyld: launch, loading dependent libraries
DYLD_INSERT_LIBRARIES=/Developer/usr/lib/libMainThreadChecker.dylib:/Developer/Library/PrivateFrameworks/DTDDISupport.framework/libViewDebuggerSupport.dylib:/Developer/Library/PrivateFrameworks/GPUTools.framework/libglInterpose.dylib
(lldb) 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Little丶Seven

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值