同步推上传破解ipa方法
今天运营同事要求把已经上架到appStore,上传到同步推市场(tui.tongbu.com),在使用过程,感觉是无从下手,官方上没有任何文档,问客服也是爱搭不理,给他们提个建议也是很差的态度,来了句我们不支持。上传到同步推应用市场要的ipa文件必须是破解的,下面就来说下,也是记录下自己在使用过程遇到的些问题。
一、准备工作
系统OS X Yosemite 10.10,Xcode6.1 ,越狱设备一台
二、破解Xocde
1.伪造签名证书:
打开实用工具-钥匙串访问。然后在菜单栏里点击钥匙串访问-证书助理-创建证书来打开向导。必须要把名称命名为iPhone Developer,将类型设定为代码签名,将"让我覆盖这些默认值"选中。之后的步骤无需更改,一路点击“确定”和“继续”来完成这个向导就可以!
2.修改Xcode配制文件
1)修改SDKsettings.plist文件
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.1.sdk/
打开SDKSettings.plist文件,把CODE_SIGNING_REQUIRED和ENTITLEMENTS_REQUIRED的值改成NO。图如下:
2)修改Info.plist文件
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/
打开该目录下的Info.plist文件,右击--Add Row,增加两项:
PROVISIONING_PROFILE_ALLOWED 值为 NO
PROVISIONING_PROFILE_REQUIRED 值为 NO
3)将上面Info.plist文件中的 "XCiPhoneOSCodeSignContext" 替换成"XCCodeSignContext"(共3处)
3.设置gen_entitlements.py脚本
在命令终端中执行如下命令:
mkdir /Applications/Xcode.app/Contents/Developer/iphoneentitlements
/* 在 /Applications/Xcode.app/Contents/Developer/ 目录下创建一个 名为iphoneentitlements的目录*/
cd /Applications/Xcode.app/Contents/Developer/iphoneentitlements
/* 进入刚刚创建的iphoneentitlements目录*/
curl -O http://www.bobzy.cn/xcode/gen_entitlements.txt
/* 把gen_entitlements.txt放到刚创建的iphoneentitlements目录,gen_entitlements.txt如下
#!/usr/bin/env pythonimport sys
import structif len(sys.argv) != 3:print "Usage: %s appname dest_file.xcent" % sys.argv[0]sys.exit(-1)APPNAME = sys.argv[1]
DEST = sys.argv[2]if not DEST.endswith('.xml') and not DEST.endswith('.xcent'):print "Dest must be .xml (for ldid) or .xcent (for codesign)"sys.exit(-1)entitlements = """
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict><key>application-identifier</key><string>%s</string><key>get-task-allow</key><true/>
</dict>
</plist>
""" % APPNAMEf = open(DEST,'w')
if DEST.endswith('.xcent'):f.write("\xfa\xde\x71\x71")f.write(struct.pack('>L', len(entitlements) + 8))
f.write(entitlements)
f.close()
*/
mv gen_entitlements.txt gen_entitlements.py
/*重命名刚刚下载的文件,命名为gen_entitlements.py*/
sudo chmod 777 gen_entitlements.py
/* 修改这个文件的权限,加上任意人可执行(此处要求你输入系统账号密码)*/
4. 修改项目属性 (每次新建项目都要执行)
2)点击Project项目图标,找到"BuildSettings"选项下的"Code Signing",将其值全部改为"iPhone Developer"
3)点击TARGETS项目图标, 切换到Build Phases选项,点击Editor – Add Build Phase – Add Run Script Build Phase,然后输入以下脚本:
export CODESIGN_ALLOCATE=/Applications/Xcode副本.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ] || [ "${PLATFORM_NAME}" == "ipados" ]; then /Applications/Xcode副本.app/Contents/Developer/iphoneentitlements/gen_entitlements.py "</span><span style="font-family: 'Hiragino Sans GB W3', 'Hiragino Sans GB', Arial, Helvetica, simsun, u5b8bu4f53;font-size:12px; line-height: 22.75px; background-color: rgb(255, 255, 255);">my.company</span><span style="background-color: rgb(255, 255, 255);">.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "iPhone Developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/";
fi
注意:my.company.${PROJECT_NAME} 替换为自己项目的Bundle Identifier。
5. 连接设备调试打包
![](/assets/blank.gif)
在使用过程中遇到的问题:
Add Run Script Build Phase:这里要注意if then前后的路径要保持一致,我只修改了前面没有注意then后面的,就会有错误提示。
Command /bin/sh failed with exit code 1:这是由于有2个一样的密钥造成的,删除一个就OK了。
同步推上传破解ipa方法相关推荐
- 如何向天翼云服务器上传文件,天翼云储存上传文件的方法
也许您总是担心电脑里的重要资料会因为电脑故障而意外丢失?也许您总是为了保存文件,用U盘拷贝的同时还发送一份邮件给自己?也许您总是苦恼于相片太多,手机内存空间不够用?立刻开始使用天翼云,一切将迎刃而解! ...
- php post 文件,PHP响应post请求上传文件的方法_php技巧
本文实例讲述了PHP响应post请求上传文件的方法.分享给大家供大家参考,具体如下: function send_file($url, $post = '', $file = '') { $eol = ...
- jquery ajax java上传文件_jQuery Ajax方式上传文件的方法
jQuery Ajax方式上传文件用到两个对象 第一个对象:FormData 第二个对象:XMLHttpRequest 目前新版的Firefox 与 Chrome 等支持HTML5的浏览器完美的支持这 ...
- java修改文件的大小限制_Struts2修改上传文件大小限制方法解析
首先struts上传最大大小由两个地方决定. struts.multipart.maxSize决定整个post的form最大是多大,所以这个限制是最初的.默认大小是接近2M,在struts的defau ...
- sftp命令上传本地文件到服务器,使用sftp命令上传文件夹方法
使用sftp命令上传文件夹方法 发布时间:2020-08-05 02:24:03 来源:ITPUB博客 阅读:138 作者:ouyida3 # 前言 sftp上传单个文件使用put,多个文件可使用mp ...
- 大文件上传的解决方法
大文件上传的解决方法 一.使用分片上传的方法 二.进度条使用浏览器XMLHttpRequest的onprogress方法对进度进行监视 三.断点续传核心方法:通过xhr的abort方法,主动放弃当前请 ...
- 上传了ipa但iTunes Connect没有构建版本问题
AU上传ipa出现下图红框提示说明成功上传,如果App Store后台没有出现构建版本, 请登录 apple账号对应的邮箱查看反馈,特别留意垃圾邮箱,无论成功还是失败,apple都会发邮件 一.首先登 ...
- xshell怎么往linux系统上传文件,xshell怎么连接linux xshell上传文件的方法
匿名用户 1级 2016-04-29 回答 1.保证linux下ssh开启(默认开启) # netstat -tupln |grep ssh tcp 0 0 0.0.0.0:22 0.0.0.0:* ...
- 淘宝店铺上新图片上传获取请求方法
淘宝上新图片上传获取请求方法如下: 1.请求方法:POST [支持高并发同时请求] 点击获取请求key和secret Headers: 参数名称 参数值 是否必须 示例 备注 Content-Type ...
最新文章
- The bean 'xxxx.FeignClientSpecification', defined in null, could not be registered. A bean with that
- 【异常】redis.clients.jedis.exceptions.JedisDataException: ERR unknown command ‘PSETEX‘
- 加减法叫做什么运算_期中备考:数学运算定律、法则与顺序
- centos7搭建nexus
- SAP Spartacus Storefront页面的page layout config
- 【图像处理】——Python实现图像特征提取BP神经网络实现图像二分类
- 隔离区别对待?如何捆绑?Java中的jdbc数据库事务及其隔离级别
- 一文读懂 IPv4 到 IPv6 的过渡技术
- socket编程五种模型
- docker 安装 sqlserver 数据库
- 页面显示问题用layer插件
- 使用so动态链接库g++正确,gcc undefined reference错误
- Jhipster创建微服务【0】——踩坑
- 电脑同时上内外网——设置教程(附内外网优先级设置)
- Unity 3D的常用快捷键
- opencv证件照变更任意底色
- 【LEACH协议】基于matlab实现无线传感器网络LEACH与DEEC协议
- 网络安全:为大家介绍5种常见的加密算法
- 多台电脑共享键盘鼠标
- [Windows] 获取设备唯一标识
热门文章
- 为什么天才容易患阅读障碍症_一个阅读障碍患者,是怎样成为优秀律师的?
- 圆盘自动机 cell
- php网站留言,php实现网站留言板功能,php实现留言板_PHP教程
- app创意_7个简单的App营销创意
- 黑鲨会升级鸿蒙吗,别再被噱头忽悠了,红魔6、黑鲨4究竟如何选?
- 谷歌浏览器无法正常更新:无法启动更新检查(错误代码为 3: 0x80040154)
- 海豚php 上传图片,自定义分片上传字段
- 不使用canvas怎么实现一个刮刮卡效果?
- 「Bug」OpenCV读取图像为 None 分析
- 加薪——爱你在心口难开 1