`
haoningabc
  • 浏览: 1482635 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

生成ipa 这个是自己总结的,ios5.1.1越狱系统,xcode4.3.3可用

    博客分类:
  • ios
ios 
阅读更多
最有用的一段
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 "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "haohao" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi





1.建立 “钥匙串”
如图,比如家里钥匙串为 “haohao”
创建证书
(1)

(2).

(3)

(4)
后面默认

(5)


2.xcode选择设备,插入设备
右上角,Organizer
选择设备,并开发者模式

3.在 中间的设置
build setting 中的
code signing Identiy
中andy ios sdk 设置为 “haohao”

4.在build Phase 中的右下角
Add build Phase
使用Add run shell
如图,shell内容如下 注意这里的“haohao” 为刚才生成的钥匙串的名字
其他的都不变,什么“my.company.”之类的都不变
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 "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "haohao" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi



以上内容注意
中需要用到一个python文件生成.xcent文件到app中,
apple:test1.app apple$ cat /Applications/Xcode.app/Contents/Developer/iphoneentitlements/gen_entitlements.py
#!/usr/bin/env python

import sys
import struct

if 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>
""" % APPNAME

f = 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()

apple:test1.app apple$ 


------------
还要设置一下一些,一下这些是借鉴别人的文章
apple:Desktop apple$ cat xcode.txt 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk

sudo cp SDKSettings.plist SDKSettings.plist.orig
进行编辑
sudo vim SDKSettings.plist
将以下两段中的YES改为NO
<key>CODE_SIGNING_REQUIRED</key>
<string>YES</string>
和
<key>ENTITLEMENTS_REQUIRED</key>
<string>YES</string>

cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform
sudo cp Info.plist Info.plist.orig
sudo vim Info.plist
将全部的XCiPhoneOSCodeSignContext 修改成 XCCodeSignContext,3处

mkdir /Applications/Xcode.app/Contents/Developer/iphoneentitlements
cd /Applications/Xcode.app/Contents/Developer/iphoneentitlements
curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
mv gen_entitlements.txt gen_entitlements.py
-----------------
sh-3.2# cat gen_entitlements.txt 
#!/usr/bin/env python

import sys
import struct

if 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>
""" % APPNAME

f = 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()

sh-3.2# 
--------------------
sh-3.2# mv gen_entitlements.txt gen_entitlements.py
sh-3.2# ls
gen_entitlements.py
sh-3.2# chmod 777 gen_entitlements.py 

看图 把xcode的工程的所有的code sign去掉

----------
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 "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "haohao" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi
-------------



/Users/apple/Library/Developer/Xcode/DerivedData/test1-gmkvwytfnpktwcfdsyetryfgpitk/Build/Products/Debug-iphoneos
目录下找到 test1.app拖拽到itunes,再拖拽出来就变成ipa了,用91或者itunes或者nginx把ipa文件传到iphone上就可以了

---------
5.生成ipa

以上是对这篇文章的修正
http://blog.csdn.net/stoneson/article/details/7340332
  • 大小: 235 KB
  • 大小: 45.9 KB
  • 大小: 33.4 KB
  • 大小: 45.8 KB
  • 大小: 131.4 KB
  • 大小: 59.5 KB
  • 大小: 97.1 KB
  • 大小: 13.4 KB
分享到:
评论

相关推荐

    iOS 5.1.1免证书开发+真机调试+生成IPA全攻略

    文章中还不断更新了对Xcode和iOS系统的支持情况,列出了多个版本的Xcode和iOS系统,以及相应的兼容性信息,这有助于开发者了解哪些环境配置是可行的。此外,文章还提醒开发者在进行操作前关闭Xcode,并对原配置文件...

    iOS非越狱开发 (一)

    在 iOS 非越狱开发中,Xcode 和 MonkeyDev 是两个非常重要的工具。Xcode 是 Apple 官方提供的集成开发环境(IDE),用于开发 iOS 应用程序;MonkeyDev 是一个插件开发框架,用于开发和修改微信 App 的功能。开发者...

    MAC OS X 10.8 + Xcode 4.6 下实现无证书真机调试 IOS5.1.1

    这个过程适用于已经越狱的iOS设备,如文中提到的ios5.1.1的越狱后的iPod。以下是实现这一目标的步骤: **第一步:建造证书** 1. 打开Finder,进入“应用程序”&gt;“实用工具”&gt;“钥匙串访问”。 2. 在“钥匙串访问”...

    12.1的ios的xcode包

    【标题】"12.1的iOS的Xcode...综上所述,这个"12.1的iOS的Xcode包"是专为在iOS 12.1环境下开发和测试应用的开发者准备的,提供了一整套工具和服务,确保他们在新系统版本下能够有效地创建、测试和完善自己的应用程序。

    XCODE自动编译生成IPA脚本(IOS)

    这是一个包含所有编译结果和元数据的归档文件,是生成IPA的前提。 4. **导出IPA**:创建完`.xcarchive`后,脚本会使用`xcodebuild`的`-exportArchive`选项导出IPA文件。这一步通常涉及选择导出方法(如App Store或...

    Xcode生成IPA全攻略

    Xcode 4.1/4.2/4.3/4.4/4.5 + iOS 5.1.1免证书(iDP)开发+真机调试+生成IPA全攻略

    iOS9.3.2,iOS10(Xcode_8_beta6)SDK支持xocde5、6

    然而,标题提到这个SDK资源能够使Xcode 5和6支持iOS9和iOS10的调试,这在通常情况下是不可能的,因为Apple通常会限制较新版本的SDK只能与较新版本的Xcode配合使用。但是,有一些非官方的方法,比如使用模拟器库或者...

    IOS11SDK xcode8调试IOS11

    xcode8调试IOS11 Shift+Command+G进入 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 把解压后的文件复制进去。

    ios项目生成ipa文件的真正简单可用的方法------自己总结

    这篇文章将深入解析如何简单有效地生成IPA文件,基于作者的个人经验总结。首先,我们需要了解IPA文件的结构和生成流程。 1. IPA文件简介: IPA(iOS Application Package)是苹果iOS设备上应用的标准安装包格式,它...

    Xcode iOS11.0 配置包

    这个配置包是为了满足开发者在不升级Xcode的情况下,仍然能够对运行iOS 11.0系统的设备进行真机调试的需求。 首先,我们要理解为什么开发者会需要这样的配置包。iOS 11.0是在2017年推出的重要操作系统更新,引入了...

    xcode支持iOS15.2和iOS15.4

    在这个特定的情境中,我们关注的是Xcode对iOS 15.2和iOS 15.4版本的支持。 首先,iOS 15.2是苹果操作系统的一个重要更新,它带来了多项新功能和改进。对于开发者来说,这意味着他们需要确保其应用程序与这个新版本...

    MAC OS X 10.8 + Xcode 4.4 下实现无证书真机调试 IOS5.1.1

    ### MAC OS X 10.8 + Xcode 4.4 下实现无证书真机调试 IOS5.1.1 #### 知识点一:证书构建与管理 **背景介绍:** 在iOS开发中,默认情况下,为了确保应用程序的安全性和合法性,苹果要求开发者必须通过有效的证书对...

    xcode 4.5.2 免证书真机调试 生成ipa 教程二.docx

    xcode 4.5.2 免证书真机调试生成ipa 教程二 在本教程中,我们将介绍如何在 xcode 4.5.2 中生成...本教程介绍了如何在 xcode 4.5.2 中生成 ipa 文件,并安装在越狱的 IOS 设备上。这对开发者来说是一个非常有用的技术。

    windows系统实现 IOS打包IPA教程

    Windows 系统实现 IOS 打包 IPA 教程 本教程主要讲解如何在 Windows 系统上实现 IOS 打包 IPA 的过程。该过程需要安装 VMware 软件和 Mac OS 补丁,以便在 Windows 系统上模拟 Mac OS 环境。 第一步:安装 VMware ...

    iOS真机调试包(Xcode)

    本压缩包“iOS真机调试包(Xcode)”专为iOS 16.1至16.3系统设计,旨在帮助开发者在真实设备上进行调试工作,而非仅仅依赖模拟器。以下将详细介绍这个调试包的使用方法以及与iOS真机调试相关的知识点。 首先,下载...

    自动打包 xcode 生成 ipa

    在进行iOS应用的自动打包过程中,开发者经常会使用Xcode提供的命令行工具xcodebuild来实现。本篇知识点将详细解释如何使用xcodebuild来完成从项目文件(.xcodeproj或.xcworkspace)到生成IPA包的整个流程。此外,也会...

    iOS 15.1 xcode包

    这是一个开发者磁盘映像文件,通常包含了针对特定iOS版本的模拟器系统镜像和其他必要的开发工具。当开发者在Xcode中想要测试应用在iOS 15.1上的表现时,就需要加载这样的磁盘映像来运行和调试。这个文件的作用在于...

    iOS 13.6 xcode 真机包iOS 13.6 xcode 真机包

    "iOS 13.6 xcode 真机包"的标题和描述暗示了这可能是一个包含了用于在iOS 13.6设备上进行真机测试的Xcode配置或固件更新。下面我们将深入探讨相关的知识点。 1. **iOS 13.6**: 这是苹果iOS操作系统的一个特定版本,...

Global site tag (gtag.js) - Google Analytics