ue4 打包IOS(测试包)

首先,在打包IOS时,不管是否需要远程mac打包。

我们都需要证书文件(cer 或者 p12)和描述文件。

cer证书带有公钥,在生成时,需要csr(证书签名请求) ,安装cer需要私钥。

开发证书可以创建p12副本证书,用在其他电脑上。p12是带有私钥的证书。

 

下面的步骤包括:

1.证书与描述文件获取

2.项目打包基础设置

3.远程打包设置

 

关于证书与描述文件请看下面

https://www.jianshu.com/p/8eff18ad88b3【实用帖】苹果开发者账号证书详解

 

如果是只是测试用一下,没有付费的开发者账号,要获取证书文件(.p12)和描述文件(.mobileprovision),可以看这里,然后跳过步骤一

http://www.applicationloader.net/blog/zh/1073.html

步骤一

如果有付费开发者账号,可以通过下面两种方式获得证书文件(.cer)。

1.第一种, 使用UE4 自带的工具申请证书。

  1. 浏览到Engine\Binaries\DotNET\IOS\目录,并运行iPhonePackager.exe。

  2. 信息提供是对应每个项目的。 当提示时,选择您项目的.uproject文件,将其与iPhonePackager应用程序关联,然后点击 打开 。

    这个操作必须在您每次运行iPhonePackager应用程序时完成。 但是,它会记忆您选择的上一个项目的位置。

  3. 选择 新建用户 选项卡并点击 Create certificate request and a key pair(创建认证申请和密匙对) 。

    此时打开 Generate Certificate Request (生成认证申请)对话框。

  4. 输入所需信息,其中包括您的苹果ID的电邮地址和名称(或公司名称)。

  5. 点击 Generate a key pair(生成密匙对) 并选择一个位置以保存.key文件。

  6. 点击 Generate Certificate Request(生成认证申请) 并选择一个位置以保存.csr文件。

    此时 Generate Certificate Request(生成认证申请) 窗口关闭,您会返回主iPhonePackager窗口。

  7. 请转到苹果 iOS 开发者网站的iOS认证 页面。

  8. 点击按钮来生成新的认证。

  9. 选择 iOS App Development(iOS应用程序开发) 并点击 继续 。

        

    10.点击 继续 

    11.点击 Choose File(选择文件) 并选择您之前生成的认证签名申请 (.csr)文件,然后点击 Generate(生成) 

12。下载认证(.cer)文件到您的电脑。

2.第二种,在mac中申请。(这种情况可以获得cer,但是如果我们要在windows中的ue4中使用的话,cer 没有单独的私钥文件,所以我们都是从钥匙链中获取p12文件来用,关于怎么导出p12,请看最上面的连接)

第一种,通过钥匙串访问生成CSR 并从IOS认证页面生成

生成证书请求:钥匙串访问⟶证书助理⟶从证书颁发机构请求证书

        填写开发账号邮件和常用名称,勾选“存储到磁盘” 保存后的名称应该为:CertificateSigningRequest.certSigningRequest

        保存到磁盘后在你的钥匙串访问窗口应该会出两个密钥,一个公钥密钥,一个专用密钥,红色部分就是你在上面输入的常用名

备注:CSR文件尽量每个证书都制作一次,将常用名称区分开来,因为该常用名称是证书中的密钥的名字;之后在开发者中心将该CSR文件提交;

  1. 请转到苹果 iOS 开发者网站的iOS认证 页面。

  2. 点击按钮来生成新的认证。

  3. 选择 iOS App Development(iOS应用程序开发) 并点击 继续 。

        

    4.点击 继续 

   5.点击 Choose File(选择文件) 并选择您之前生成的认证签名申请 (.csr)文件,然后点击 Generate(生成) 

    6.下载认证(.cer)文件到您的电脑。然后双击安装到钥匙链。

第二种,通过XCode 生成

  1. 在Xcode下拉菜单中,选择 Preferences(偏好设置) 。

  2. 选择 Accounts(账户) 选项卡。

  3. 点击左侧角落的加号按钮,然后选择 Add Apple ID(添加苹果ID) 。

  4. 输入您的苹果ID信息,然后点击 Add(添加) 。

  5. 选择左侧面板的苹果ID, 右边会出来一个详细信息面板,点击右下角的Manage Certificates

  6. 点击加号按钮,然后选择 iOS Development(iOS开发) 来完成认证生成过程。

  7. 这种情况时,证书文件已经安装到了钥匙链中了。

 

接下来是获取描述文件,也就是授权文件(.mobileprovision)

描述文件里包含了App ID , Certificates (证书), Devices(设备)。 说明生成描述文件需要用到这些信息。我们要打包或者在真机上运行一个应用程序,首先需要证书来进行签名,用来标识这个应用程序是合法的、安全的、完整的等等。然后需要指明它的App ID,并且验证Bundle ID是否与其一致。再次,如果是真机调试,需要确认这台设备能否用来运行程序。而Provisioning Profile就把这些信息全部打包在一起,方便我们在调试和发布程序打包时使用,这样我们只要在不同的情况下选择不同的profile文件就可以了。而且这个Provisioning Profile文件会在打包时嵌入.ipa的包里。

接下来我们需要先注册APP ID 和测试设备,然后再获取授权文件

所以接下来我们需要注册APP ID,也就是一个应用的ID

选择 “Identifiers”的 “App IDs”,点击“+”出现以下界面:

App ID Description 是一个App ID的描述,就是一个名字,这个名字可以随便取,通常我们可以与应用名称相同

填写bundle ID: 这里就是我们需要在UE4项目中填写的 bundle ID

服务中文翻译

最后会有一个详细的内容列表,对应无误后,提交完成

接下来我们需要注册用来测试的设备

如图,点击“+”,一个99美元账号只能申请100个设备。

填写自己测试设备的名字和UDID,UDID在Xcode中可以查看,也可以用 爱思助手 等工具查看。UE4自带的工具也可以查看

填好 name 和 UDID后,点击continue 就可以看到如下界面,点击“Register”就可以在苹果上登记了。

现在我们开始获取授权文件

打开https://developer.apple.com/account/ios/certificate/,点击页面左侧的Provinsioning Profiles分类下的All

点击右上角的+按钮,准备为你的开发者账号添加一个Provisioning Profile。 选择授权文件类型,下面罗列了iOS常的授权文件类型

选择 iOS App Development, 点击Continue。

选择我们刚刚生成的 App ID,选好后,点击“Continue”

选择刚刚添加的证书,点击Continue。

选择设备,设备可以选择全部设备,也可以按需选择你需要的设备:

这里给我们的描述文件取一个名字,这个名字在以后的xcode中是看得到的,所以可以取一个好辨认的名字。取好名字后,选择“Continue”生成描述文件。

生成好描述文件后,选择“Download”

 

步骤二

接下来我们配置UE4工程(是否远程编译都要先设置一下)

打开项目的项目设置 然后在“  移动设置”  部分的“ 平台   iOS” 下  ,按“  导入设置”  按钮导入您的设置,然后对“  导入证书”执行相同操作

p12 证书需要 密码,而cer证书需要.key文件。 都导入成功后

然后在下面的Bundle Information 中,需要将Bundle Identifier 设置成你之前注册的APP ID的 bundle ID, 然后 你会看到 上面的证书与描述文件会变成绿色的。 表示配置成功了.

如果是纯蓝图工程就可以直接编译了。如果是c++工程等需要mac才能完成的编译项目请看步骤三

步骤三

远程编译ios包

我们只需要一台装有Xcode的 mac电脑或者mac虚拟机 即可。这里并不需要安装开发证书

首先需要设置mac电脑的远程登陆,打开mac的系统偏好设置,找到共享

勾选远程登陆, 让电脑可以通过启动SSH远程登陆。

然后打开项目的项目设置 然后在“  移动设置”  部分的“ 平台   iOS” 下  ,找到Build

 

修改如下设置为你需要连接的mac电脑的ip地址

Remote Server Name:mac 的iP地址

修改如下设置为登陆mac电脑的用户名

Rsync User name : mac 登录的用户名。

 

然后点击下面的 Generate SSH Key。然后弹出如下对话框

这里有几个提示必须看一下:主要根据弹出窗口中的提示进行 SSH 设置。此处的额外步骤将助您完成此操作。

  1. 如 host 无法被认证,在弹出提示中输入“yes”。

  2. 输入 Remote User Name 中指定的用户密码。

  3. 弹出提示将要求输入口令。建议不指定口令,以便脱离用户交互进行使用。

  4. 之后将弹出提示再次输入用户名的密码,完成操作。

现在我们按任意键继续:

根据上面的提示出现这个我们直接输入yes

 

然后这里让我们输入登陆mac的密码

 

有可能中间会断开,这时候不用管,直接一路回车到最后就可以了

看一下这里如果是空的,就继续点击Generate SSH Key按钮

第一次输入登陆mac的密码,然后会出来一个Enter passphrase, 这时候一路回车就可以了,直到出现再出现passward,这时候再次输入mac登陆密码,然后回车,私钥就下载下来了

 

然后你会看到

表示,私钥已经下载下来了。

 

这里有一个bug,就是这里的私钥直接使用有可能这个会出现下面的错误(参照这里 https://answers.unrealengine.com/questions/844683/view.html

 

这个貌似是路径问题,解决方法就是我们把这个私钥复制到一个比较简单的路径中,然后在Override existing SSH Permissions file 中指定它

 

然后我们就可以打包了。

第一次打包,速度会比较慢,因为会上传大量引擎的文件到mac中, 目录就在 ~/UE4 中

 

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值