iOS游戏——渠道越狱打包流程

关于iOS普通ipa打包这里就不说了,只要注意苹果的一些协议条款,基本上步骤都是傻瓜式的,如果不知道如何打包iOS普通ipa包,请出门左转,度娘在哪里等你!

那么,如何将app打包成越狱包,越狱iphone在cydia源上下载安装,这样的需求在互联网游戏行业是非常普遍的,尤其是各种马甲包横行的时代!

关于越狱相关内容,请看这里

常见deb包打包方式

1、第一种方式:

自定义目录下 如desktop创建文件夹,起名test,test内新建文件夹Payload
把xcode Build好的.app(Products目录中)拷到Payload目录中
打开终端,cd指令 到test文件目录下,执行

zip -r “xxx.ipa” *         
注意里面的空格:(zip -r “xxx.ipa”[空格]* )

ipa包就打好了,可以安装到越狱手机上试试看

注意事项:Debug或Release的Any iOS SDK都设置为正式发布证书,经测试该越狱包可正常接收推送。

2、第二种方式:

在xcode中点击Product->Archive,完成后会弹出Organizer,点右边的Distribute,弹出一个向导对话框,点击“Export as Xcode Archive”,选择位置,会在那个位置生成后缀名是.xcarchive的文件
右键“显示包内容”->”Products”->”applications” 然后找到那个应用程序,

将其拖到iTunes里面,在itunes的【应用程序】里找到这个文件,然后右键“在Finder 中显示”,便可找到ipa文件了
….

ipa包就打好了,可以安装到越狱手机上试试看

最近发现了一种更好的方式

致谢: 胖梁的技术笔记

1.修改编译选项重新打包

在工程的Build Settings -> Code Signing -> Code Signing Identity选项, 将 Debug 和 Release 下的 Any iOS SDK都设置为 Don’t Code Sign然后在重新Archive

2.准备目录

创建一个目录用来打包,如tmp,tmp下建DEBIAN和Applications两个目录, DEBIAN下建一个文本文件control tmp目录结构如下:

-DEBIAN
---control
-Applications

control文件就是打包时的配置文件,它也会作为deb包的配置被打包到包中, 文件例子:

Package: com.sharedream.game
Name: 游戏测试
Version: 0.1-1
Description: 游戏测试游戏,开发中...
Section: 游戏
Depends: firmware (>= 4.3)
Priority: optional
Architecture: iphoneos-arm
Author: liangwei <http://weibo.com/iamliangwei>
Homepage: http://weibo.com/iamliangwei
Icon: file:///Applications/game.app/Icon.png
Maintainer: liangwei <http://weibo.com/iamliangwei>

然后将xcode打包出来的.app文件整个拷贝到Applications目录下, 结构如下:

-DEBIAN
---control
-Applications
---game.app
3.打包

退出至tmp的上层目录

dpkg-deb -b tmp game.deb

看到如下几行就是打包完成了

warning, `com.sull.sample/DEBIAN/control' contains user-defined field `Name'
warning, `com.sull.sample/DEBIAN/control' contains user-defined field `Author'
warning, `com.sull.sample/DEBIAN/control' contains user-defined field `Sponsor'
dpkg-deb: ignoring 3 warnings about the control file(s)

拷贝到cydia源中, 重新扫描包生成Packages列表文件, 并压缩成Packages.bz2就可以啦

dpkg-scanpackages -m debs >Packages
bzip2 -zkf Packages

contains ununderstood data member data.tar.xz” 的安装错误

是因为自从1.17.0版本的dpkg-deb开始, 默认使用xz格式来压缩data.tar文件
但是,cydia在ios提供的dpkg是1.14版本, 还没有支持xz这种压缩格式
所以我们需要设置”-Zgzip”参数给dpkg-deb 进行打包, 类似命令:

dpkg-deb -Zgzip -b tmp game.deb
关于iOS普通包打包可以参考这里:
坚持原创技术分享,您的支持将鼓励我继续创作!