生成未签名的IPA iOS应用程序

有没有可能创build一个未签名的iOS应用程序,.ipa文件? 我们有一个企业客户需要我们的iOS应用程序的未签名的IPA文件,然后他们将与他们的MAM产品签署。

如果可能的话,我该怎么做?

一旦我从博客复制它。 步骤如下:

在Xcode 5上构build未经签名的.ipa而无需开发人员帐户

禁用代码签名:

1.1转到/应用程序,然后右键单击Xco​​de.app,然后单击“显示包内容”

1.2转到目录/开发人员/平台/ iPhoneOS.platform / Developer / SDKs / iPhoneOS7.0.sdk /并将文件SDKSettings.plist复制到桌面

1.3打开复制的SDKSettings.plist文件。 在"DefaultProperties" ==> "dict"findCODE_SIGNING_REQUIRED并将其值从YES更改为NO 。 保存文件

1.4将此修改的SDKSettings.plist文件复制回Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/replace原始文件[您可以保存原始文件作为备份]根据需要进行所需的AUTHENTICATION

1.5重新启动Xcode并打开可运行的xcode项目

1.6在Project Navigator中select您的项目并打开您的项目的Build Settings部分并select全部子标题。

1.7在“代码签名”下find“代码签名身份”,对于“debugging”和“发行”模式,均将“任何iOS SDK”设置为“不要代码签名”。

做一个IPA:

2.1在Xcode中,转到产品并点击存档

2.2第七步将build立你的项目和创build一个档案。 处理完成后,将打开新窗口“组织 – 存档”。 在这个窗口的列表中,你可以看到你的项目。 右键单击项目,然后单击在Finder中显示将显示* .xcarchive文件

2.3右键单击* .xcarchive文件,然后单击显示软件包内容并转到产品=>应用程序,您将在其中看到名为“projectname”.app的应用程序文件

2.4打开iTunes更改视图到应用程序,然后将应用程序文件“projectname”.app拖到iTunes中。

2.5右键单击您的应用程序,单击在Finder中显示。 在那里你会有你的.ipa文件。

重要笔记 :

3.1在步骤2.1中,如果Archive菜单被禁用,这很可能是因为当前在Xcode工具栏中select了一个模拟器选项作为运行目标。 将此菜单更改为连接的设备或通用iOS设备目标选项应启用“产品”菜单中的“存档”选项。

3.2您还需要通过Cydia在您的iPhone上安装AppSync。

是的,这是可能的; 我现在用Xcode 5 / iOS 7 SDK来做这个。

您必须编辑/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS*.*.sdk/SDKSettings.plist文件如下。

改变这个:

 <key>CODE_SIGNING_REQUIRED</key> <string>YES</string> 

对此:

 <key>CODE_SIGNING_REQUIRED</key> <string>NO</string> 

我已经使用的指示取自这里的Wiki,这可能会提供一些其他有用的信息。

您可能需要对构build设置进行一些其他更改,例如Code Signing Identity和设置Provisioning Profile (可能只是将其设置为无)

最简单的方法是build立在命令行上。

  /usr/bin/xcodebuild -scheme MYSCHEME -workspace MYWORKSPACE.xcworkspace -configuration Release clean archive -archivePath "build/APPNAME.xcarchive" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO 

这些是我在iTunes 12.7.0之后的步骤,因为他们删除了App View菜单项。

2.4 – 创build一个新的名为Payload的新文件夹

2.5 – 将“procjectname”.app添加到Payload文件夹中

2.6 – 将文件压缩到一个zip文件夹

2.7 – 将文件从Payload.zip重命名为“projectname”.zip

2.8 – 从“projectname”.zip更改为“projectname”.ipa