当前位置:  开发笔记 > 编程语言 > 正文

如何将Xcode中的iPhone应用程序部署到真正的iPhone设备?

如何解决《如何将Xcode中的iPhone应用程序部署到真正的iPhone设备?》经验,为你挑选了7个好方法。

如何在没有99美元的Apple证书的情况下,将Xcode的iPhone应用程序部署到真正的iPhone设备?



1> cregox..:

我用过两个混音:Jason和alex's.第二,我们有能力调试的优势.我将大部分只是复制下面的两个(并简化alex's):

更新2012年1月:这仍适用于SDK 4.2.1和iOS 5.0.1 - 我刚刚在新的计算机和设备上测试了它!


1.创建自签名证书

修补iPhone SDK以允许使用此证书:

    启动Keychain Access.app.如果未选择任何项目,请从"钥匙串"菜单中选择"证书助理",然后选择"创建证书".

    名称: iPhone开发者

    证书类型: 代码签名

    让我覆盖默认值: 是的

    单击继续

    有效期: 3650天

    单击继续

    空出电子邮件地址字段.

    单击继续直到完成.

    您应该看到"此根证书不受信任".这是预料之中的.

    设置iPhone SDK以允许使用自签名证书:

    sudo /usr/bin/sed -i .bak 's/XCiPhoneOSCodeSignContext/XCCodeSignContext/' /Developer/Platforms/iPhoneOS.platform/Info.plist
    

    如果您打开Xcode,请重新启动它以使此更改生效.

如果你在iOS 5上,那就是它!现在就试试!它可能不允许调试,但应用程序将在那里!

我对此感到非常惊讶,因为你应该知道,我不知道所有这些黑客都是关于什么的!正如我指出的那样,我所做的只是改进了我在其他地方发现的一点点.

所以,是的,整个方法不再以同样的方式工作,我无法找到一个新的...除了这个,它使用一个名为Theos的工具,但我无法完成整个过程.

最后,如果您因任何原因需要卸载它,请查看此帖子的结尾.在我的情况下,我不得不因为我无法弄清楚为什么所有蓝色这整个方法都停止工作,我不能再关心了,因为我们已经获得了漫长的等待许可.(FUNING DUNS号码需要很长时间......)

.

.


.

.

.

2.启用Xcode以在Jailbroken设备上构建

    在越狱的iPhone上,通过添加源**安装app AppSync**http://repo.hackyouriphone.org**

    删除代码签名和权利的SDK要求(我很喜欢sed!):

    sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
    

    要注意iPhoneOS5.0.sdk部分.例如,如果你使用iOS 4.2 SDK,只需相应地替换它:

    sudo /usr/bin/sed -i .bak '/_REQUIRED/N;s/YES/NO/' /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist
    

    通过修补Xcode来结束需求删除.这意味着二进制编辑:

    cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/
    dd if=iPhoneOS\ Build\ System\ Support of=working bs=500 count=255
    printf "\xc3\x26\x00\x00" >> working
    /bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original
    /bin/mv working iPhoneOS\ Build\ System\ Support
    chmod a+x iPhoneOS\ Build\ System\ Support
    

    如果您打开了Xcode,请重新启动它以进行此更改(以及最后一次)以使其生效.

    打开"项目>编辑项目设置"(从菜单中).单击"构建"选项卡.在列表中找到"代码签名标识"及其子"任何iPhoneOS设备",并将两者都设置为"不要代码签名"条目:

    替代文字

    在此之后可以随意撤消第3步.至少在我的情况下它很好.

    使用我们自定义的自签名证书(第一个操作方法)将Xcode设置为代码签名.如果您不想调试,可能会跳过此步骤:

    mkdir /Developer/iphoneentitlements401
    cd /Developer/iphoneentitlements401
    curl -O http://www.alexwhittemore.com/iphone/gen_entitlements.txt
    mv gen_entitlements.txt gen_entitlements.py
    chmod 777 gen_entitlements.py
    

    插入iPhone并打开Xcode.打开窗口>管理器.从左侧列表中选择设备,然后单击"用于开发".系统将提示您输入配置网站,单击"取消".它可以使合法配置更容易,但不会使非法配置变得更加困难.

    现在,您必须为您制作的每个新项目执行此最后一部分.转到菜单Project> New Build Phase> New Run Script Build Phase.在窗口中,复制/粘贴此:

    export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
    if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
    /Developer/iphoneentitlements401/gen_entitlements.py "my.company.${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
    

.

.


.

.

卸载

第1部分:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Info.plist.bak /Developer/Platforms/iPhoneOS.platform/Info.plist

第二部分:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/SDKSettings.plist
sudo mv -f iPhoneOS\ Build\ System\ Support.original iPhoneOS\ Build\ System\ Support

如果您确实执行了步骤3而不是2,那么也只需相应地修改它:

sudo mv -f /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist.bak /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/SDKSettings.plist

其余的,只是恢复你在XCode上所做的事情并删除/Developer/iphoneentitlements401/gen_entitlements.py你想要的:

sudo rm -f /Developer/iphoneentitlements401/gen_entitlements.py



2> rpetrich..:

听起来应用程序没有签名.从Cydia下载ldid,然后像这样使用它:ldid -S /Applications/AccelerometerGraph.app/AccelerometerGraph

还要确保二进制文件标记为可执行文件: chmod +x /Applications/AccelerometerGraph.app/AccelerometerGraph


非常聪明 - 使用Cydia.
是的,您需要越狱设备才能使用此方法.(明显)

3> Suragch..:
Xcode 7之后的免费配置

为了在真实设备上测试您的应用程序而不是支付Apple开发人员费用(或越狱您的设备),您可以使用Xcode 7和iOS 9支持的新免费配置.

以下是文档中或多或少采取的步骤(非常好,所以请阅读):

1.在Xcode中添加Apple ID

转到XCode>首选项>帐户选项卡>添加按钮(+)>添加Apple ID.请参阅文档以获取更多帮助.

在此输入图像描述

2.单击"项目导航器"中的"常规"选项卡

在此输入图像描述

3.从"团队"弹出菜单中选择Apple ID.

在此输入图像描述

4.连接设备并在方案菜单中选择它.

在此输入图像描述

5.单击"修复问题"按钮

在此输入图像描述

如果您收到有关捆绑包名称无效的错误,请将其更改为唯一的.

6.运行您的应用程序

在Xcode中,单击"生成并运行"按钮.

在此输入图像描述

7.在设备设置中信任app开发人员

运行应用程序后,您将收到安全性错误,因为您要运行的应用程序不是来自App Store.

在此输入图像描述

在您的设备上,转到设置>常规>配置文件> 您的Apple-ID-name > Trust your-Apple-ID-name > Trust.

8.再次在您的设备上运行您的应用程序.

而已.您现在可以运行自己的(或任何其他具有源代码的应用程序),而无需支付99美元.感谢Apple,最终允许这样做.



4> 小智..:

您不能,如果您正在讨论使用官方SDK构建的应用程序并直接从xcode部署.



5> Can Berk Güd..:

你必须越狱你的设备.



6> 小智..:

有一种方法可以部署iPhone应用程序而无需支付给苹果.您必须越狱设备并按照http://www.alexwhittemore.com/?p=398中的说明进行操作



7> Matthew Phil..:

我在任何地方都看不到任何东西表明你可以在没有(付费)证书的情况下临时部署到真正的iPhone.

推荐阅读
落单鸟人
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有