1、前言
iTunes 12.7 之前,可以下载ipa应用包、打开ipa包,也生成ipa文件!但是在这12.7之后,关于ipa的所有功能已经移除,如果还想下载ipa包,可以参考我之前的文章:解决 iTunes 12.7 无法下载 AppStore应用的IPA包问题,今天我们主要来说说制作ipa文件的功能。
2、ipa文件结构
其实ipa文件可以理解为一个zip的压缩文件,所以解压ipa文件后,得到ipa的目录 ipafilename/Payload/xxx.app
,以微信示例:
所以,如果我们编译的项目,想生成ipa文件,以前是拖拽到iTunes就会自动生成ipa文件,现在不行了,根据这个原理,我们在Xcode中编译生成的.app
目录,按照前面说的目录结构,进行压缩就行啦!
3、bash脚本
生成.app目录内容:
执行shell脚本生成ipa文件:
生成成功后,自动打开ipa文件所在目录:
4、全部代码
具体的代码,可参考我的Github代码:
1 |
|
5、优化
方法一
每次想生成ipa文件,就要打开终端,执行 sh make_ipa_file.sh
,相当麻烦,所以,如果生成别名,直接在终端输入别名就可以执行啦,是不是很棒!
为.bash_profile添加了一个别名:
1 | mkipa='sh /Users/HTC/Documents/iBash/make_ipa_file.sh' |
以后直接在终端输入:mkipa
就可以啦,这不是很棒!!!
方法二
如果是 Unix 可执行文件,直接点击,会自动打开终端执行。
把 make_ipa_file.sh
改为 make_ipa_file_sh
名字,然后在终端为文件添加可执行权限:chmod +x /Users/HTC/Desktop/make_ipa_file_sh
这样就生成了 Unix 文件,双击就会打开到终端:
方法三
在 ~/.bashrc 里面添加本函数,或添加脚本路径,也可以方便执行。
方法四
如果是macOS环境,还可以通过苹果的apple脚本服务,来做到一键化,以后有机会在谈谈。
方法五
也通过 spotlight
或 第三方软件 Alfred
快速查找文件打开~
6、总结
通过这个简单又复杂的示例,其实使用脚本的最终目录,也是想提高效率!!所以,打包ipa包的效率,也是向着这样的方向努力!如果你对shell还不熟悉,可以看看下面这2个教程,当前我学习的时候,还没有人给指导,所以,你们是幸福的一代程序员!加油!
参考
- iHTCboy/iShell: Shell脚本编程技巧,总结一些常用的提高效率的方法。
- 新版 iTunes 的变化 - Apple 支持
- Linux bash总结(一) 基础部分(适合初学者学习和非初学者参考) - 博客园
- ios打包ipa的四种实用方法(.app转.ipa)
- osx - Executing Shell Scripts from the OS X Dock? - Stack Overflow
- 解决 iTunes 12.7 无法下载 AppStore应用的IPA包问题
- Shell 教程 | 菜鸟教程
- 执行 Shell 脚本 - EffectiveMac
- 如有疑问,欢迎在评论区一起讨论!
- 如有不正确的地方,欢迎指导!
> 注:本文首发于 [iHTCboy's blog](https://iHTCboy.com),如若转载,请注来源