成都ios开发:调试工作重点(一)

时间:2017-04-18 13:32来源:成都达内 作者:达内杨老师 点击:

iOS是由苹果公司开发的移动操作系统 。苹果公司最早于2007年1月9日的Macworld大会上公布这个系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad以及Apple TV等产品上。iOS与苹果的Mac OS X操作系统一样,属于类Unix的商业操作系统。原本这个系统名为iPhone OS,因为iPad,iPhone,iPod touch都使用iPhone OS,所以2010WWDC大会上宣布改名为iOS(iOS为美国Cisco公司网络设备操作系统注册商标,苹果改名已获得Cisco公司授权)。
2016年1月,随着9.2.1版本的发布,苹果修复了一个存在了3年的漏洞。该漏洞在iPhone或iPad用户在酒店或者机场等访问带强制门户的网络时,登录页面会通过未加密的HTTP连接显示网络使用条款。在用户接受条款后,即可正常上网,但嵌入浏览器会将未加密的Cookie分享给Safari浏览器。利用这种分享的资源,黑客可以创建自主的虚假强制门户,并将其关联至WiFi网络,从而窃取设备上保存的任何未加密Cookie。


1、框架导入方式:

Targets—>Build Phases—>Link Binary With Libraries 中
点“+”导入系统的或Add Other导入外部的 , 

资源文件直接拖入左边文件夹中



2、文件路径设置:

Targets—>Build Settings—>Search Paths设置
相对路径:$(inherited) 继承
$(PROJECT_DIR) 指xxx.xcodeproj所在的父目录
$(SRCROOT) 根路径

例如:如果在Header Search Paths中添加$(SRCROOT)/scr,那么头文件引用直接引用 include “test.h”

Always search User Paths 可设为为NO,其他路径可相应设置(调试可设的包不同路径)
如果设置了 Always Search User Paths 为 yes,编译器会先搜索User Header Search Paths路径下的目录,在这种情况下include <string.h>,User Header Search Paths 搜索目录下的文件会覆盖系统的头文件


3、模拟器运行项目选择:

cocos2d支持多平台运行,模拟器选择的前一个文件需选择iOS文件



4 .dmg文件中打开的项目提示锁定:

需项目拷贝出来运行



5、Xcode7网络设置:

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>
还有一种单独设置方式按情况设置不同



6、纠正后删除左边红色文件:

最新Xcode中库后缀名".dylib"可用".tbd" ,
(正常情况)通过Finder同样找不到.dylib文件,
因该文件是隐藏文件。需按快捷键 CMD+Shift+G,
输入 /usr/lib 后进入隐藏界面,然后添加需要的.dylib即可。
删除重复导入的框架



7、链接报错:symbol(s) not found for architecture x86_64  :

Xcode升级到5.1 新特性之一就是默认让所有App都通过64位编译器编译。原来在Xcode5.0.x的时候默认的Standard architectures只有(arm7,armv7s),到5.1之后默认就带上arm64的参数了。

目前临时的解决办法是 
1.把1.选中Targets—>Build Settings—>Architectures。
把build active architectures only 改为 NO。

2. 把最下面的Valid Architectures中的arm64参数删掉就可以了
   或者:
  双击Architectures,选择other,删除$(ARCH_STANDARD),然后增加armv7和armv7s(写上:$(ARCHS_STANDARD_32_BIT))。

3.clean 再build。

以上都不行则说明模拟器中不能调试,只能真机调试



8、Xcode7以上真机调试步骤:

1.Xcode ->Preferences->Accounts->左下角“+”Add Apple ID
2.target->Build Phases->Code Signing->Code Signing Identity选择iOSDeveloper,Provisioning Profile选择Automatic(有申请的也可以选择自己的证书)
3.General->Identity ->Team ->选择自己的账号 ,账号可能与其他企业等账户冲突则需重新注册
4.点击Fix Issue
5.运行



9、编码错误:You must rebuild it with bitcode enabled 
(Xcode setting ENABLE_BITCODE) :

Targets—>Build Settings—>Build Options->Enable Bitcode 设置为NO



10、真机运行崩溃错误:dyld`dyld_fatal_error:
                                    0x2be810c4:  trap   
                                    0x2be810c8:  nop    :

尝试:
 1.将CFNetwork框架后面改成可选的Optionnal,可能是网络请求问题
 2.把foundation框架放到CFNetwork框架上面
 3.查看控制台输出的内容,提示没有加载资源,则可能需在 General->Embedded Bnaries中导入需要的框架


成都it培训哪家好,当然是成都达内培训,成都达内是一家专业的程序员培训机构,专注于成都java培训,成都ios培训,成都android培训,成都C++培训,成都PHP培训,成都IT培训,成都编程培训等IT培训,专业的成都软件培训机构,专业师资授课,真实项目实战、零首付、低押金、名企就业

(责任编辑:成都达内)

CopyRight © 2002-2016 成都达内科技职业技能培训学校 (www.cdtedu.com) 版权所有 成都达内 川公网安备 51019002000307号 网站地图