调试方法
hufeng825
hufeng825@msn.cn
展开
-
打理一下IOS项目中的图片资源
项目经历过大的变动之后会留下一些不再需要的图片文件,写了一个脚本跑了一下,找到150张未用到的图片,给力~下面的脚本使用的时候需要根据自己的项目指定图片目录和代码目录找出不再需要的图片#如果没有找包含@"imageName"或@"imageName.png"的.h.m文件,则认为项目里不再需要这个图片find ./Resources -name "*.png" \转载 2012-10-03 23:06:47 · 763 阅读 · 0 评论 -
object-c 利用scanf 实现终端的输入输出缓冲
#import int main(int argc, char *argv[]) {@autoreleasepool {NSLog(@"请输入您的帐号");int i; scanf("%d",&i);NSLog(@"您输入的是%d",i);}}原创 2013-01-28 15:02:38 · 1616 阅读 · 0 评论 -
UIWebView加载HTTPS站点出现NSURLErrorDomain code=-1202 SSL
最近在做push 信息到facebook中。当使用UIWebview加载https的站点时webview总是会报NSURLErrorDomain code=-1202,导致网页加载失败。自己打印错误和网上搜索是因为证书失效,https使用超文本安全传输协议,即超文本传输协议(HTTP)和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定。当我们的服务器使用自我签名证书时,而UIWebV转载 2013-01-29 12:53:35 · 4171 阅读 · 0 评论 -
ios 平台编译器支持一览表
原创 2013-01-31 14:04:23 · 1429 阅读 · 0 评论 -
深复制 浅复制 最简单的记忆法则
ios中 所有带NSMutable的数据类型 copy 方法得到的都是浅copy不可变的数据类型 否则用mutableCopyint main(int argc, char *argv[]) {@autoreleasepool {NSMutableArray *original = [NSMutableArray arrayWithObjects:@"a",@"b",n原创 2013-02-14 21:08:19 · 1039 阅读 · 0 评论 -
XCode 4.3 左花括号独立成行
目的:希望将XCode默认代码中类似以下代码if () { }中的左花括号,替换成下面这种默认格式。if (){ } XCode4.3中,左花括号分为两种,一种是在文件模版中,比如*.h和*.m文件默认代码中的左花括号。这种修改参见以下连接:【转】xcode4自定义文件模板(Creating Custom Xcod转载 2013-03-05 14:35:00 · 1153 阅读 · 0 评论 -
ios打开系统setting页面
SDK现在可以直接打开setting页面了,以往的SDK则不可以,当时我还花了大量时间去实现,结果不了了之。如果你想打开Location SiOS5的SDK现在可以直接打开setting页面了,以往的SDK则不可以,当时我还花了大量时间去实现,结果不了了之。如果你想打开Location Services的setting页面,代码如下:[[UIApplication转载 2013-04-10 12:22:42 · 1655 阅读 · 0 评论 -
ios OTA 发布
通过ota安装app是个很酷的功能,尤其是发给朋友测试的时候。一直想整理一下这方面的文件,发现很多人都整理了。转一篇儿中文的:iOS: install App via OTA用的是xcode4.3.这还有一篇儿英文的:Distributing an iPhone App (.ipa) Over the air with Xcode 4.虽然说是xcode4.但应该是4.2及以下的版本。因为转载 2013-04-10 12:24:13 · 1544 阅读 · 0 评论 -
ios运行时替换函数
#includevoid Swizzle(Class c, SEL origSEL, SEL newSEL){Method origMethod = class_getInstanceMethod(c, origSEL);Method newMethod = class_getInstanceMethod(c, newSEL);if(class_addMethod(转载 2013-04-10 13:11:56 · 1962 阅读 · 0 评论 -
chmod命令详解 Permission denied
Permission denied 没有执行权限 可以用下面命令给予权限。chmod +x httpd.shwww# chmod -R +r+w+x *指令名称:chmod 使用权限:所有使用者 使用方式:# chmod [-cfvR] [--help] [--version] [mode] filename... ...命令说明:Linux/Unix 的档案调用权翻译 2013-05-30 15:28:09 · 6076 阅读 · 0 评论 -
XCode中的快捷键
Xcode 也有许多快捷键,编程的同时使用它们可以提高你的效率,一起试试吧。其中 Opt ⇔ Alt 键。Opt+Cmd+↑在 .h/.m 文件间切换 : 你是否经常在 .h/.m 文件直接频繁切换呢?一般是点击左边的「组和文件」来选择,但是使用快捷键将更加方便。Opt+高亮符号+双击检索高亮处函数的帮助当你在 dictionaryWithObjec原创 2013-01-27 23:39:01 · 1105 阅读 · 0 评论 -
Objective-C的方法替换(Method Replacement for Fun and Profit)
本文将要讨论Objective-C中的方法替换(method replacement)和swizzling(移魂大法)。 重写类的方法(Overriding Methods)Overriding methods在任何面向对象语言中都很常见,主要用于子类化中。在子类中复写一个方法,然后在子类的实例就可以使用这个被重写的方法。 对于一个你无法控制其实转载 2013-01-26 23:40:12 · 742 阅读 · 0 评论 -
iOS系统Crash文件分析方法
Xcode 4.3的symbolicatecrash的位置和老版本的不一致了。/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/转载 2012-10-03 22:37:43 · 1459 阅读 · 0 评论 -
GDB调试
.命令 解释 .break NUM 在指定的行上设置断点。 .bt 显示所有的调用栈帧。该命令可用来显示函数的调用顺序。 .clear 删除设置在特定源文件、特定行上的断点。其用法为:clear FILENAME:NUM。转载 2012-10-06 13:29:03 · 705 阅读 · 0 评论 -
文件存储操作--字符串
简单封装 字符串的存储操作,省去中间沙盒处理方式?12345678910111213141516171819202122232425262728转载 2012-10-13 11:30:31 · 864 阅读 · 0 评论 -
字符串转成NSDate类型,计算与当前时间的相差,年数,天数,时分秒……
=?1234567891011121314151617181920212223242526272829NSString*转载 2012-10-13 11:33:23 · 1021 阅读 · 0 评论 -
禁止某几个文件用ARC模式编译
在一个支持ARC (Automatic Reference Counting)的项目中,有时候需要禁止其中几个文件使用ARC模式编译(比如你用了第三方不支持ARC的类库)。?1234/*在要禁止ARC编译的源文件的 “compiler flags” 中添加 “-fno-objc-arc”。 对于转载 2012-10-13 11:38:36 · 803 阅读 · 0 评论 -
Objective-C语法之异常处理
目录(?)[+]Objective-C的异常比较像Java的异常处理,也有@finally的处理,不管异常是否捕获都都要执行。异常处理捕获的语法:[cpp] view plaincopy@try { } @catch (NSException *exception) {转载 2012-11-11 14:55:46 · 894 阅读 · 0 评论 -
查询工程中的图片是否被引用 对于后期优化非常有用
有部分图片是名称一样存放在模块的image文件下与公共的image 文件重复有的是图片名称一样 文件不一样xib 中引用的到请用以下命令逐一查看排除grep -i -r --include=*.xib --include=*.m "line" ./ | grep "line.png"原创 2013-01-23 12:58:08 · 1944 阅读 · 0 评论 -
断言 NSAssert assert NS_BLOCK_ASSERTIONS
NSAssert 只能在Objective-c里面使用。是assert的一个扩充。能捕获assert类异常及打印一些可读的日志。而assert只是让app crash(abort).xcode 中 大家都会在debug(QA) 模式下进行调试代码所以我们只需要再build Settings 中假如宏定义 变成够 控制 NSAssert的生效范围例如 只希望debug原创 2013-01-24 14:06:45 · 2081 阅读 · 0 评论 -
优化Stack Trace 崩溃的显示 转自 唐巧
intmain(intargc,char *argv[]){ @autoreleasepool{ // 异常停在了下面这行,毫无提示作用 returnUIApplicationMain(argc,argv,nil,NSStringFromClass([MyClassclass]));}}XCode的Console界面报出了一原创 2013-01-24 14:46:35 · 2353 阅读 · 0 评论 -
多个个框架静态编译是注意的一点Build Active Architecture Only
当多个框架静态编译时 为了节约调试时间可以把QA的target ----》Build Active Architecture Only 设置为YES原创 2013-01-24 13:36:19 · 1335 阅读 · 0 评论 -
xcode 注释
原创 2013-01-27 23:20:54 · 905 阅读 · 0 评论 -
关于delloc 没有调用 问题排查 笔记
遇到 delloc 没有调用 基本上就可以断定是循环引用造成的了。而遇到这种情况基本上可以分为 1: 属性声明weak的地方 写成了 strong ,比如delegate。2: block语法块中 存在的强引用。所以遇到delloc 基本上排查下这两种情况 就能解决80%的问题了。 但是现实中往往会有遇到一些其他的问题所在 ,比如 我今天遇到的一个viewcontrolle原创 2015-06-26 14:56:14 · 2802 阅读 · 0 评论