APP Store 常见的问题及解决方案

神剑若水哥:XCode 常用的两种打包的方式

2019-05-13  本文已影响0人  神剑若水哥

Xcode 打包的方式网上也很多,但是不系统,今天神剑哥,就来个系统点的。大致就是两种打包方式:

archive 打包 和 Build Show in finder 打包(Build Show in finder打的包其实是你run和build 工程的时候生成在products里的包)\color{red}{我用的Xcode 10.2.1 }演示,这个也是当前最新版本。不同的版本,可能会有细微差别

一、打包前的相关设置:

1证书的相关设置如下图:\color{red}{ 1,2,3 步骤} 我们配置好DEBUG包和Release 包的描述文件(最好不要勾选automatically manage signing),也就是说:DEBUG包 和RELEASE 包 使用的证书不同。有的小伙伴就问了,我怎么知道,我打的包是RELEASE 还是 DEBUG 尼? 也许有的小伙伴并不知道怎么控制,请看第二条;

1证书配置.jpg

2.你run或者build的时候,生成的包是RELEASE 还是 DEBUG 包,其实是通过下面步骤\color{red}{ 1,2,3 步骤}来设置控制 ,如图,点击run 时,有一个Debug 和Release 选项;这个就决定了你在 build 或 run 工程时,在工程products \color{red}{(可能有的小伙伴不知道products文件夹在哪里,回头细说)}文件夹中生成包是Debug 还是Release。\color{red}{关于DEBUG 和 RELEASE 包的区别,就不多说了}简单点:

1.DEBUG包中有断点,有一些调试数据和打印信息,这些RELEASE 包都没有。
2.有的可能DEBUG 和 RELEASE包,环境地址不同,甚至有功能有差异,有一些代码是根据DEBUG 来判断是否编译的。
2进入scheme-1.jpg
3进入scheme-2.jpg

3.archive 打包 RELEASE 还是 DEBUG 和上面差不多一样,如下图:

4进入scheme-3.jpg

二、Build Show in finder 打包

DEBUG 还是RELEASE 上面已经说过了,不在多说了

1.清除工程中先前的缓存的包 \color{red}{(也就是products 里的包)},方法:command + shift + k \color{red}{(等待clean successful)} products 文件夹会变红色,如下图

5clean工程.jpg

2.编译工程生成包,方法:command + B \color{red}{(等待build successful)} products 文件夹会变色,如下图:

6build工程.jpg

3.获取.app 包 方法:对着生成的包,右击->show in finder \color{red}{(如下图:步骤 1,2)}

7找到包-1.jpg 7找到包-2.jpg

4.获取.ipa 包 方法: \color{red}{(a,b,c三步)}

a.在桌面上新建一个文件夹Payload ,将上一步找到的那个包,拷贝并放入这个新建的文件夹里, \color{red}{(如下图:)}\color{red}{Payload }不能用其他的名字,图中TestApp是错误的,TestApp文件夹出包以后不能安装,亲试,知道的请留言,大家自动将testApp 脑切为\color{red}{Payload }
7找到包-3.jpg
b.对着这个Payload右击,压缩Payload \color{red}{(如下图:)},生成Payload.zip \color{red}{(如下图:)}
7找到包-4.jpg 7找到包-5.jpg
c.把Payload.zip扩展名改为ipa \color{red}{(如下图:)},生成Payload.ipa \color{red}{(如下图:)}
7找到包-6.jpg 7找到包-7.jpg 7找到包-8.jpg

Payload.ipa 就是我们最终要的东西,很简单吧

这样压缩过来改名字有的时候很麻烦的,这里分享一个zip压缩脚本https://pan.baidu.com/s/1q6RjQ4cE4zc5KYtCOct2iw,只要把脚本和Payload文件夹放同一级目录,双击脚本,就可以对Payload进行压缩了,直接生成ipa 文件了,如图:

脚本.jpg
如果有的小伙伴遇到权限问题。要给脚本增加权限:
chmod +x /Users/Desktop/test/zip压缩脚本.command 
//后面是脚本的路径

\color{blue}{注意:只要双击脚本,就可以了} \color{red}{如图:}

脚本2.jpg

三、archive 打包如下:

DEBUG 还是RELEASE和证书配置 第一大步已经说过了,不在多说了

1.archive 打包\color{red}{(如下图:1,2,3)}

8archive-1.jpg

2.archive完成以后 会弹出如下界面\color{red}{(如下图:点击配置这个包Distribue App)}

8archive-2.jpg

3.选择打包类型 会弹出如下界面\color{red}{(如下图:根据包的用途和profile 的种类,选择你的包,我的证书是enterprise,所以我选第三个,给大家示范)}

archive-3.jpg

4.出现如下界面,选择瘦身的设备(可不选),以及Safari链接(可不选)\color{red}{(如下图:)}

8archive-5.jpg

5.出现如下界面,选择你的签名证书,profile 描述文件,然后next 变成可以点击的状态了 \color{red}{(如下图:)}

9archive-6.jpg

6.签名完成以后,出现下面的界面,点击export ,导出你的包,选择保存路径即可。 \color{red}{(如下图:)}

8archive-7.jpg
archive-9.jpg

5.在导出的文件夹中,我们发现了我们的包 \color{red}{(如下图:)}

last.jpg

6.总结:archive 打包慢一些,步骤多,但是不容易出错,所打的包属于debug还是release,也是靠最初的第一大步控制,。

建议:1.如果是临时给测试人员打包,测试人员要看debug日志或者包中需要展示在DEBUG 下的一些调试功能可以使用build show in finder(builde 和run 时程序员不需要改动,默认就是debug包) 打包。2.如果是发包生产,或者上传App store ,还是archive吧,因为archive默认就是release,而切步骤详细,不容易出错 3.这样不用每次都去调整release 还是debug 了。当然,只是建议。

以上是自己的一点拙见,欢迎大家指正,有需要的可以留言,或者发送邮件联系讨论:26263134126@qq.com

喜欢😍的请点个👍喜欢,多谢支持,以后“神剑哥”会更卖力创作,后续会给大家讲述,如如何用脚本打包。

上一篇下一篇

猜你喜欢

热点阅读