当前位置: 首页 > news >正文

工程网站建设方案网站首页布局设计工具

工程网站建设方案,网站首页布局设计工具,整合营销包括哪三方面,wordpress的视频嵌入Xcode 4.1/4.2/4.3/4.4/4.5 iOS 5.1.1免证书(iDP)开发真机调试生成IPA全攻略 开发环境使用的是目前为止最新的稳定版软件#xff1a;Mac OS X Lion 10.7 Xcode 4.1 目前Xcode 4.2 Preview版也已经发布#xff0c;据说其修改方法跟4.1非常类似#xff0c;只改动了一行代码… Xcode 4.1/4.2/4.3/4.4/4.5 iOS 5.1.1免证书(iDP)开发真机调试生成IPA全攻略   开发环境使用的是目前为止最新的稳定版软件Mac OS X Lion 10.7 Xcode 4.1 目前Xcode 4.2 Preview版也已经发布据说其修改方法跟4.1非常类似只改动了一行代码请参看参考文章的第二篇。本文仍以4.1版本为例。 更新现在Xcode 4.2正式版和iOS 5均已发布下面补充上4.2的修改方法。2011-10-24 各步骤会标明版本比如Xcode4.1请执行和 Xcode4.2请执行4.2.1的修改方法与4.2完全相同 未标明的步骤为两个版本均需执行的步骤 更新现在Xcode 4.3已发布修改方法类似Xcode 4.3的修改步骤将以 Xcode4.3请执行标出2012-2-7 更新现在Xcode 4.3.2和iOS 5.1.1完美越狱均已发布本文及时进行了更新。修改方法类似Xcode 4.3.2的修改步骤将以 Xcode4.3.2请执行标出2012-5-28 更新Mountain Lion Xcode 4.4已发布本人尚未安装但在评论中看到已经有朋友测试成功这里祝贺这些朋友2012年8月5日 更新Xcode 4.5 for Mountain Lion已发布。本人已经更新并亲测破解成功。Xcode 4.5将原来XML格式的plist文件变成了二进制格式故修改方法略有不同具体操作已在文中给出请各位朋友测试2012年10月2日更新   2012年2月7日更新 目前本人已经测试并证实有效的平台有 Xcode 4.1 iPod touch 4 iOS 4.3.3   Xcode 4.2 iPod touch 4 iOS 4.3.3 iPod touch 4 iOS 5.0 iPod touch 4 iOS 5.0.1   Xcode 4.2.1 iPod touch 4 iOS 4.3.3 iPod touch 4 iOS 5.0.1 iPhone 4S iOS 5.0.1(5A406)   Xcode 4.3(2012年2月7日更新) iPhone 4S iOS 5.0.1(5A406)   Xcode 4.3.2(2012年5月28日更新 iPhone 4S iOS 5.1.1   Xcode 4.4.1 for Mountain Lion(2012年9月26日更新) iPhone 4S iOS 5.1.1   Xcode 4.5 for Mountain Lion(2012年10月2日更新 iPhone 4S iOS 5.1.1   另外操作系统的版本貌似对调试影响不大这期间用过的系统有Mac OS X 10.6~10.8.2都没有问题。   当然您需要先越狱您的设备并通过Cydia安装AppSync 本文参考了多篇文章综合其中的方法并修正其中的错误整理而成。 未经许可请勿转载。本文首次发表于http://kqwd.blog.163.com/ 参考的文章有 http://laolang.cn/back-end-develop/helloworld-iphone-developer.html http://ccmos.tw/blog/2011/06/30/xcode4-port-program-to-idevice-without-idp/ http://www.cnblogs.com/flyingzl/articles/2207717.html 众所周知在Xcode上开发的程序只能在模拟器中运行如果要放到真机上则要花费99美金购买开发者证书iDP。这严重阻碍了我等草根开发者探索的脚步。写个小程序同学间分享一下这个小小的愿望都不能满足自然不能善罢甘休。 在没有iDP的情况下要想将程序放到iPhone上调试并最终发布IPA用于分享需要以下几个步骤 1.自己为自己颁发一个证书用于为生成的程序签名 2.修改工程配置以及Xcode的配置文件和二进制文件以阻止其验证和签名 3.通过自定义生成步骤用伪造的证书为应用程序签名 4.使用一点小trick来生成IPA文件 1.创建证书 创建证书的过程比较简单打开实用工具-钥匙串访问。然后在菜单栏里点击钥匙串访问-证书助理-创建证书来打开向导。第一个步骤比较重要必须要把名称命名为iPhone Developer将类型设定为代码签名将让我覆盖这些默认值选中。之后的步骤无需更改一路点击“确定”和“继续”来完成这个向导就可以。 2.修改Xcode的配置文件和二进制文件 下面的步骤稍微有点繁琐您应该了解UNIX命令行的基本操作并了解一种命令行文本编辑器本文使用的是vim。尽管这里会给出完整的代码但是关于修改和保存代码的基本操作不再赘述。下面的操作请先 将Xcode按CommandQ完全关闭。 (1)修改配置文件 进入目录并备份原文件 4.1、4.2、4.3在这里主要的差别是SDK的目录名不同 Xcode4.1请执行cd /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/ Xcode4.2请执行cd /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/ Xcode4.3请执行cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk Xcode4.3.2请执行cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk Xcode4.5请执行cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk   sudo cp SDKSettings.plist SDKSettings.plist.orig 进行编辑 Xcode 4.5之前 sudo vim SDKSettings.plist 将以下两段中的YES改为NO keyCODE_SIGNING_REQUIRED/key string YES /string 和 keyENTITLEMENTS_REQUIRED/key string YES /string Xcode 4.5的plist格式不再为XML而是改为了Apple自己的二进制格式我们使用Xcode本身来编辑这个plist文件命令是 sudo /Applications/Xcode.app/Contents/MacOS/Xcode ./SDKSettings.plist 会启动Xcode的图形界面我们展开DefaultProperties分支将下面的CODE_SIGNING_REQUIRED和ENTITLEMENTS_REQUIRED两个属性改为NO 下面修改另外一个文件 进入目录并备份原文件 Xcode4.1/4.2请执行cd /Developer/Platforms/iPhoneOS.platform/ Xcode4.3/4.4/4.5请执行cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform   备份 sudo cp Info.plist Info.plist.orig 进行编辑 sudo vim Info.plist 将全部的 XCiPhoneOSCodeSignContext 修改成  XCCodeSignContext网上的大部分文章说有2处但我找到了3处可能是Xcode 4.1要多一处 Xcode 4.2/4.3/4.3.2也有三处总之都改掉了。提示在在vim中输入 /要搜索的内容来搜索按 n键是搜索下一处。 Xcode 4.5)编辑命令如下 sudo /Applications/Xcode.app/Contents/MacOS/Xcode /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Info.plist Xcode 4.5也有三处分别在DefaultProperties分支下、RuntimeRequirements分支下和OverrideProperties分支下。 (2)二进制补丁 #在桌面上建立script这个脚本 cd ~/Desktop vim script # (Xcode 4.1执行)在编辑器中输入如下内容 #!/bin/bash cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Plug-ins/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/ dd ifiPhoneOS\ Build\ System\ Support ofworking bs500 count255 printf xc3x26x00x00 working /bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original /bin/mv working iPhoneOS\ Build\ System\ Support chmod ax iPhoneOS\ Build\ System\ Support # (Xcode 4.2执行)在编辑器中输入如下内容 #!/bin/bash cd /Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/PrivatePlugIns/iPhoneOS\ Build\ System\ Support.xcplugin/Contents/MacOS/ dd ifiPhoneOS\ Build\ System\ Support ofworking bs500 count255 printf xc3x26x00x00 working /bin/mv -n iPhoneOS\ Build\ System\ Support iPhoneOS\ Build\ System\ Support.original /bin/mv working iPhoneOS\ Build\ System\ Support chmod ax iPhoneOS\ Build\ System\ Support 保存并退出。4.1和4.2在这里的区别也是目录名不同就是代码中绿色的部分。4.1是 Plug-ins而4.2是 PrivatePlugIns 授予这个脚本执行权限并执行它 chmod 777 script ./script 正常的话应该输出(具体的数字可能有差别) 2311 records in 2311 records out 115904 bytes transferred in 0.001738 secs (66694555 bytes/sec) # (Xcode 4.3注意)在Xcode 4.3版本中我没有找到iPhoneOS Build System Support.xcplugin这个插件因此我跳过了这个步骤并且最终也成功的进行了联机调试。因此我个人认为Xcode 4.3没有必要执行“二进制补丁”这一步骤。请各位朋友测试~ # (Xcode 4.3.2/4.4/4.5注意)在Xcode 4.3.2版本中我们可以找到iPhoneOS Build System Support.xcplugin但我没有修改它仍然可以进行联机调试。这个修改步骤是从Xcode 3.X中继承过来的我们有理由猜测在Xcode 4.x版本中已经不需要修改这个文件了。2012年5月28日更新   至此对SDK中配置文件和二进制文件的修改就完成了 3.准备自定义的生成后脚本 连接互联网后执行 #(Xcode 4.1/4.2执行) 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   #(Xcode 4.3/4.4/4.5执行) 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 chmod 777 gen_entitlements.py   热心网友Ringo_D指出这里可能涉及到权限问题。我做的时候貌似没有出啥问题如果您在执行这段代码时遇到Permission denied提示的话请将相应的语句前面加上sudo以获取超级权限。2012年6月15日更新 如果您已经联网则请直接转到步骤4如果您没有联网那么请在相应目录手动创建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 version1.0 encodingUTF-8? !DOCTYPE plist PUBLIC -//Apple//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd plist version1.0 dict     keyapplication-identifier/key     string%s/string     keyget-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() 4.修改工程设置 特别注意本阶段之前的修改配置文件、准备脚本等只需要做一次。但本阶段的操作对每个需要真机调试的工程都要做一遍。 这个步骤的主要作用是支持真机调试如果不做这个步骤仍然可以通过步骤5来生成ipa在真机上运行但是无法使用Xcode内置的调试器对在真机上运行的程序进行单步跟踪。如果您的程序在点击Run真机调试时秒退请检查此步骤是否正确完成。  (1)禁用Xcode自动的签名操作 将工程配置中所有的Code Signing选项全部设为Dont Code Sign如图。可能需要先点击“All”让这个选项显示出来   (2)添加自定义的生成后脚本 在Build Phases中添加一个Phase右下角的Add Build Phase然后单击Add Run Script输入以下脚本 对于Xcode 4.1/4.2 export CODESIGN_ALLOCATE/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate if [ ${PLATFORM_NAME} iphoneos ] || [ ${PLATFORM_NAME} ipados ]; 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 对于Xcode 4.3/4.4/4.5 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 iPhone Developer --entitlements ${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent ${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/ fi   如图所示   至此配置全部完成下面就可以插上iPhone重新选择生成目标来测试一下在线调试了如果是第一次使用该设备调试请先在Organizer中将设备切换为开发模式具体操作请见常见问题5。 5.旁门左道生成IPA文件 如果我的程序调试好了怎么才能发给别人用呢正常情况下IPA文件是从Xcode的Organizer中输出的但是我们没有证书这样输出会产生错误。我们只能用个小trick来完成这个操作了。 先将代码生成为Release目标然后打开工程的输出文件夹通常情况下这个目录是 /Users/你的用户名/Library/Developer/Xcode/DerivedData/以工程名打头的文件夹/Build/Products/Release-iphoneos 很纠结吧~这个目录下有个.app的文件就是生成的程序了。把这个.app拖到iTunes中它会出现在应用程序那个列表中然后再把它从iTunes的那个列表中拖出来比如拖到桌面发生了什么哈哈它就这样变成.ipa了 把这个.ipa发给朋友大家就可以跟您一起分享这个程序了。 正常情况下发布测试版给用户需要问到对方设备ID并添加到开发者证书里去感觉有点麻烦如果是已越狱过的机器可以使用xcode制作ipa文件并直接用itunes同步进去这样方便多了。 将运行目标选为iOS DeviceEdit Scheme - 选择 Run [App Name] - Build Configuration下拉框中选择Release生成编译文件Product - Build在任意位置创建一个Payload目录 进入编译目录目录这可以找到XCode - Preferences - Locations - Derived Data找到Release-iphoneos目录将[App Name].app复制到第4步创建的Payload目录下压缩Payload目录并改名为.ipa双击添加到iTunes连接设备同步进去 文章发表以来点击量已经超过了5000次也收到了不少热心博友的反馈和疑问。现加以整理列为常见问题。感谢大家的关注2011年12月2日 常见问题 不成功的先看这里本文点击量超过6000无数网友亲测成功如果您失败了基本可以确定是您没有严格按照文中的方法操作下面列出常见问题切望各位朋友提问前先看看2011年12月14日   1. 我是初学者请问什么是权限执行权限x权限是什么意思什么是脚本如何加执行权限sudo是什么命令vim是什么如何在vim中保存更改你说的目录我没找到怎么办我有些步骤没看明白能不能加QQ交流 解答首先感谢您关注我的博客。这里要提醒各位初学者朋友Xcode提供了非常完善的模拟器调试环境模拟器调试要比真机调试方便得多也简单得多使用模拟器调试程序是iOS开发的常态。真机调试通常是在产品快要完工时才进行的看一下程序在实际机器上的视觉效果等等。还有依赖于加速度计的程序要测试一下加速度计的程序有没有问题。所以初学者并不需要一开始就进行真机调试。初学者配置真机调试的主要目的可能并非学习技术而是满足好奇心、追求成就感甚至是为了向朋友炫耀等等。而这些目的并不值得您花费这么大的精力来阅读本文。 因此本文是给有一定基础的朋友看的各种命令是免不了的。UNIX中的基本命令比如cpmvcdchmodsudo啥的还有vim编辑器如果您都没听说过强烈建议您不要尝试本文提到的修改。一旦改错了轻则Xcode挂掉重则系统崩溃。如果遇到解决不了的问题欢迎留言询问务必给出详细的错误信息否则无法判断。博主恕不解答类似于如何执行脚本代码如何赋予执行权限如何使用vim编辑器如何保存等与iOS开发无关的UNIX基础问题。博主非常乐意以文会友结识有思想、有创意、有技术的大牛。博主也会不定时到博客上对热心网友提出的问题进行简单的解答。但并没有充足的时间通过QQ对文中的步骤进行手把手的解释和指导。这里先向有这种需求的朋友说声抱歉了   2. 各种错误错误信息中包含“No such file or directory”这句话 解答错误信息的含义非常清楚就是“没有这个文件或者目录”。这类错误通常是由于您拷贝代码时不全或者开发环境安装错误等问题导致的。请再次检查报错的目录是否存在检查代码与本文给出的是否严格一致各种检查吧~总之是低级错误   3. 联机调试时程序秒退或者无法安装到设备或者任何时候报错错误信息中包含“code signing”、“CERT”、“signature”或者“certificate”字样的最常见的错误 解答证书错误或者签名错误这种问题就不要问了肯定是因为您没有严格文中的步骤做。提醒您检查的地方有(1)有没有设置为Dont Code signing (2)生成后事件的代码是否已经正确粘贴 (3)那个Python脚本是否已经成功执行 (4)设备是否已经越狱并安装AppSync (5)第一步的iPhone Developer证书是否已经正确创建 其中最可能出问题的就是生成后事件代码文中的那个Run Script没有正确执行。可能是您忘记了添加Run Script并粘贴那段代码也可能是您没复制全或者复制到了啥特殊字符导致执行出错。查看那个script的执行结果的方法是在Xcode左侧的侧边栏里点最靠右的一个标签Show the Log navigator看最近的一个Build日志不是Debug日志找到一行Run custom shell script Run Script那一行正常情况下那一行跟其他行一样是不能展开的。如果那一行左边有个小箭头点击后能展开的话说明执行出错展开后的信息即为出错的信息。请认真查看错误信息并修正脚本中的错误。如果Build日志里根本没有Run custom shell script Run Script那说明您忘记添加Build script了。。。2012年2月9日更新 补充Run Script经常报的一条错误是“replacing existing signature”。。。这个提示的意思是“替换已有的签名”出现这个提示的原因是你并没有成功的阻止Xcode使用默认的方法为应用程序签名。因为这个破解的原理就是阻止Xcode为app签名而用script中的自定义过程手动为app签名。当script为app签名时发现app已经被Xcode签名过了就会报这个错误。出这个错误后提醒您检查的地方有两个1SDKSettings.plist中需要修改的地方是否已经正确修改 2工程设置里是否将那5个签名的选项全部设为Dont Code signing 2012年6月15日更新   4. iPad能用吗 解答我没有iPad所以没法准确回答。但从热心博友的回复来看iPad无疑是可以用的。 如果要用ipad 需要把第四步脚本文件里的 platform_name iphones 换成platform_name ipads 不然会报错的~ 感谢博友xyishao的建议 感谢qingcheng89提出的改进意见现在来看上述代码可以直接支持iPad而无需修改请各位朋友测试。2012年2月9日更新   5. 为什么我的Build for Archiving选项是灰色的 解答是因为您没有把设备插到电脑上。虽然这个问题挺蠢的但我曾经也有过这个疑问哈哈~~  经热心网友xc7296815提醒设备未开启开发模式也会导致Build for Archiving不可用。开启开发模式的方法是插上设备点Xcode右上角的Organizer图标选中您的设备看一下设备名称左侧的小灯是什么颜色的。若是灰色代表未开启开发模式。此时在右边窗口中点击“ Use for Development ” 即可。若是黄色请重新插拔设备若是绿色代表设备已经开启开发模式(2011年12月25日) 关于启用开发模式的补充点击Use for Development后会要求输入Apple ID这里点击取消即可。这时启用设备开发模式的进程会立即终止。设备名称旁边应该有一个黄灯。此时重新插拔设备Organizer中会出现一个进度条等这个进度条跑完小灯就会变成绿色开发模式已经启用。(2012年5月28日更新) 再补充最近经常有人提问说无论怎么搞Organizer中的灯始终是黄色的。这种情况几乎可以百分之百的确定是您的Xcode版本不够高。如果您的设备是iOS 5.1.1则必须使用Xcode 4.3.2或以上版本。同样的道理iOS 5.0.1对应Xcode 4.3.1iOS 5.0对应Xcode 4.3……2012年6与5日更新   6.我的iOS版本/Xcode版与你的不同能用吗 解答本人测试过的环境和设备已经在文章开头给出。其他环境我没有测试过也没有条件测试因此当您的环境与我的不同时别问我可不可用您可以试一下然后把结果告诉我也为其他的网友提供方便在此先谢谢您了   7.真机调试时出现 Error launching remote program: failed to get the task for process xxx错误2012年1月26日更新 解答我在调试中貌似没有遇到过这个问题但是不少网友指出会有这个问题谁来告诉我什么情况下会出这个问题呢如果您遇到了这个问题请阅读Apple官方的帮助文档http://developer.apple.com/library/ios/#qa/qa1710/_index.html 2012年2月1日更新有网友指出该错误是由于权限设置错误导致的。由于我使用了跟报错的那位网友完全相同的环境而在操作过程中并没有遇到这个错误所以基本可以确定是您没有按步骤操作造成的请您再次检查整个过程尤其是热心网友提出的下载脚本并修改执行权限的部分。 经本人测试如果该错误出现在编译运行之后且现象为设备上的程序闪退则是由于签名错误导致的这是由于您没有严格按照上述步骤来做导致的请参考常见问题3.2012年2月9日更新
http://www.hkea.cn/news/14421612/

相关文章:

  • 万和城官方网站网站域名年龄
  • 做效果图比较好的模型网站瓯海建设网站
  • 百度做网站个人工作总结ppt模板免费
  • 如何写一份食品的网站建设规划软件开发专业培训学校
  • oppo官方网站商河 网站建设
  • 郑州网站建设策划方案网站上线有什么线上活动可以做
  • 网站做一样没有侵权吧网页不能下载的wordpress
  • 驻马店网站建设费用安徽网站建设详细教程
  • 太原网络营销策划seo建站营销
  • 判断网站cms威海网站建设whhl
  • 静态网站可以做哪些内容自己怎么做云购网站
  • 设计师采集网站做网站绿色和什么颜色搭配
  • 徐州网站开发建设公司网站的步骤
  • 蓝色网站风格wordpress wp user
  • 广告公司网站制作腾讯云网站搭建教程
  • 深圳微交易网站开发页面精美的网站
  • 鞍山网站建设制作廊坊网站制作
  • 基于html5的旅游网站的设计岳阳网络公司
  • 河北建设集团园林网站互联网公司排名前1000个
  • 贵阳能做网站的公司有哪些市场营销案例100例及答案
  • 甘肃网站建设项目中国机械加工网18易5下2拉i
  • 做网站的大公司个人网站 创意
  • 莱州做网站的公司WordPress seo终极优化
  • 查看网站建设时间协策网络
  • 手机营销网站模板免费下载网站开发(源代码)
  • 中国建设工程造价管理协会网站简称怎么设计网站规划方案
  • 自做美食哪些网站设计图纸网站
  • 网站备案和域名备案有什么区别福州做网站开发需要多少钱
  • 济南川芎网站建设公司h5制作平台官网免费
  • 云南网站建设快速排名网站设计是不是会要用代码做