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

时间:2014-08-20 03:30:43

标签: ios xcode ipa

是否可以创建未签名的iOS应用,.ipa文件?我们有一个企业客户需要我们iOS应用程序的未签名IPA文件,然后他们将使用他们的MAM产品进行签名。

如果可能,我该怎么做?

6 个答案:

答案 0 :(得分:47)

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

在Xcode 5上没有开发者帐户的情况下构建未签名的.ipa

禁用代码签名:

1.1 GoTo / Applications然后右键单击Xco​​de.app并单击"显示包内容"

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

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

1.4将此修改后的SDKSettings.plist文件复制回Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/,替换原始文件[您可以保存原始文件作为备份] 根据需要进行必要的身份验证

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

1.6在Project Navigator中,选择项目并打开项目的“构建设置”部分,然后选择“全部”子标题。

1.7在代码签名下找到代码签名标识以及调试和发布模式将任何iOS SDK设置为不进行代码签名。

制作IPA:

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

2.2第7步将构建您的项目并创建存档。完成此过程后,将打开新窗口Organize - Archive。在此窗口的列表中,您可以看到您的项目。右键单击项目,然后单击在Finder中显示,它将显示* .xcarchive文件

2.3右键单击* .xcarchive文件,然后单击Show Package Contents并转到Products =>您将看到带有项目名称的应用程序文件的应用程序" projectname" .app

2.4打开iTunes更改视图到应用程序并将应用程序文件" projectname" .app拖到iTunes中。

2.5右键单击您的应用,单击“在Finder中显示”。你会有.ipa文件。

重要提示:

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

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

答案 1 :(得分:16)

最简单的方法是在命令行上构建。

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

答案 2 :(得分:8)

是的,这是可能的;我目前使用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>

我使用的路线来自 this Wiki here ,可能会为您提供一些其他有用的信息。

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

答案 3 :(得分:1)

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

2.4 - 创建一个名为Payload的新文件夹

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

2.6 - 将文件压缩到zip文件夹

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

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

答案 4 :(得分:0)

创建未签名IPA的步骤(在Xcode 9.4.1上进行了测试)

步骤1:打开查找器> 转到文件夹。,如下图所示

enter image description here

,然后复制并粘贴以下行:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS *。*。sdk / SDKSettings.plist

打开iPhoneOS.sdk,如下图所示: enter image description here

步骤2: 将SDKSettings plist复制到另一个文件夹中,因为您无法在此处进行更改:

步骤3:进行重复更改

将CODE_SIGNING_REQUIRED设置为NO enter image description here

步骤4:现在,将重复的Plist替换为原始的Plist(两个名称必须相同)。 这还将要求管理员更改权限。

警告:请确保您已复制原始plist并将其保存在某处以备将来参考。

第5步: 现在将代码签名身份设置为下图: enter image description here

现在您可以创建存档文件 enter image description here

**步骤6:**右键单击此测试存档文件并在finder中显示:

再次单击鼠标右键,然后单击显示软件包内容

然后点击“产品”>“应用程序”>并复制.App文件

第7步:

  • 将.app文件复制到名为Payload的新子文件夹(此文件夹 名称区分大小写)
  • 按Payload文件夹并将其重命名为app_name-version_number.ipa
  • 示例-Test-version_1.1.ipa

最后您有了未签名的IPA文件:)

注意:完成应用更改后,请再次替换原始plist或将CODE_SIGNING_REQUIRED设置为YES

答案 5 :(得分:-2)

要禁用代码签名:

  • 转到/应用程序,然后右键单击Xco​​de.app并单击“显示软件包内容”
  • SDKSettings.plist位于/​​Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.x.sdk

修改SDKSettings.plist文件后,重新启动Xcode。

注意:将“ SDKSettings.plist”的备份保存在其他目录中。

生成未签名的.ipa文件后,将SDKSettings.plist文件替换为原始SDKSettings.plist文件,并删除“用户定义”设置下的“ CODE_SIGNING_ALLOWED”密钥对值。

(我还创建了a YouTube video,提供了相同步骤的演练。)