自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 将博客搬至CSDN

RT

2014-03-05 14:19:12 468

原创 View Controller Programming Guid for iOS 笔记

1.View Controller 基础 1.1 View Controller 分类 ViewController分为container view controller 和content view controller两种类型。 这两种类型只是用途不同,前者作为一个容器容纳其他的view controller,后者用来显示内容,代码上面区别不大。前者包括UINavigationView

2014-03-05 14:19:10 694

原创 iPhone电话与短信相关代码小结

关于iPhone上电话与短信相关功能,做一个简单总结:      使用公开SDK能实现的功能:      (1)获取和操作通讯录。使用函数 ABAddressBookRequestAccessWithCompletion 、ABAddressBookCopyArrayOfAllPeople等,需要用户点击按钮确认。      (2)获取电话状态     使用类CTCallCenter可

2014-03-05 14:19:08 1009

原创 时间都去哪儿了?开源一个统计iPhone上App运行时间和打开次数的小工具

如今,大家每天都有大量时间花在手机上,但是,大家有没有想过自己的时间都花在哪些App上了呢?相信很多人都有这样的需求,不过iOS系统本身并不能显示每个App的运行时间和次数,因此,本人写了这样一个小工具,可以在后台进行监控当前使用的App,对App的打开次数和运行时间进行统计,可以显示今日、本周、或全部统计结果,并能按打开次数、运行时长排序。       程序使用的是私有API,因此请勿将本文

2014-03-05 14:19:06 2751

原创 分享一个仿网易新闻客户端iPhone版的标签式导航ViewController

该Controller是一个容器,用于容纳其他的controller。效果与网易新闻客户端的标签式导航基本一样:    (1)点击上面的标签,可以切换到对应的controller,标签下面的红色提示条的长度会动态变化。    (2)在下面的内容区里左滑或者右滑可以切换对应的controller,标签会同时变化。      效果如下图所示:     使用方法:

2014-03-05 14:19:03 1086

原创 iOS推送小结(证书的生成、客户端的开发、服务端的开发)

1.推送过程简介     (1)App启动过程中,使用UIApplication::registerForRemoteNotificationTypes函数与苹果的APNS服务器通信,发出注册远程推送的申请。若注册成功,回调函数application:(UIApplication *)application didRegisterForRemoteNotificationsWithDevice

2014-03-05 14:19:01 474

原创 关于Objective C的私有函数

(1)很多从其他语言(例如C++)转到objective c的初学者,往往会问到一个问题,如何定义类的私有函数?这里的“私有函数”指的是,某个函数只能在类的内部使用,不能在类的外部,或者派生类内部使用。事实上,Objective C中可以定义类的私有变量,但由于objective c是动态语言,因此本质上是不存在私有函数的。但是,也可以用一些机制,来实现类似其他语言中私有函数的效果。 (2

2014-03-05 14:18:59 634

原创 XCode5环境下利用crash log调试线上Crash的流程

1.前言       本文主要介绍在XCode5环境下,如何根据App自己生成的crashlog来调试真机上运行时产生的crash问题。 2. 步骤(1)构造一段会crash的代码,并放到viewDidLoad里面,如下图所示:    以上代码会在objectAtIndex处因为数组越界而crash(2)在程序中捕获crash,生成crashlog,并保存到程序自己的沙

2014-03-05 14:18:57 520

原创 UIApplicationDelegate里面最常用的几个函数执行顺序小结

(1)点击桌面图标正常启动App或者杀死进程后点击推送消息启动App1.application:willFinishLaunchingWithOptions2.application:application:didFinishLaunchingWithOptions3.applicationDidBecomeActive4.application:didRegist

2014-03-05 14:18:55 810

原创 关于NSOperationQueue,一个容易让初学者误解的问题

凡是学习NSOperationQueue的人,都会遇到setMaxConcurrentOperationCount这个函数。在网上的许多博文中,都将setMaxConcurrentOperationCount解释为“设置线程池中的线程数”,我觉得这是一种以讹传讹的说法,相当不准确,容易误导初学者,至少我曾经就被误导过。实际上,NSOperationQueue 可以认为是线程池,但setMaxCon

2014-03-05 14:18:53 771

原创 ASIHTTPRequest源码简单分析

1.前言     ASIHttprequest 是基于CFNetwork的,由于CFNetwork是比较底层的http库,功能比较少,因此,在ASIHttprequest中实现了http协议中比较多的功能,包括代理、gzip、认证、缓存等等。目前,虽然ASIHTTPRequest已经不如前两年那么流行,但是分析一下其代码,对掌握CFNetwork库和HTTP协议还是有好处的,本文将简单分析一下

2014-03-05 14:18:51 731

原创 XCode5 编译ffmpeg流程

今天想在Mac10.9 XCode5的环境下把ffmpeg编译出来,本来以为很好搞定,结果版本一升级,以前的命令行不通了,出各种错误。折腾了三四个小时,最后终于成功了。 编译流程:1.ffmpeg官网下载ffmpeg源代码,并解压。2.从命令行进入ffmpeg目录,输入以下脚本: 模拟器版本:./configure --disable-ffmpeg --disable-ff

2014-03-05 14:18:49 541

原创 iOS7 新后台及下载SDK介绍

在iOS7以前的系统中,App默认是不能后台运行的,如果要后台运行,可以采用以下两类方法:  (1)使用beginBackgroundTaskWithExpirationHandler函数,向系统申请一段时间来执行需要后台运行的操作,这种方法的缺点是,后台操作最多只能运行10分钟,超过10分钟之后App会休眠。使用这种方法需要APPNAME-info.plist中设置Application d

2014-03-05 14:18:46 683

原创 ARC模式下获取retainCount的方法

_objc_rootRetainCount(obj)可以获取obj的retainCount,不过不清楚是不是私有api,因此建议调试时使用。

2014-03-05 14:18:44 1510

原创 ios编程时常见问题总结

(1)在UIViewController里面使用了timer,会使得controller被retain,因此在viewdisapper时应将timer置为nil,否则controller的dealloc不会被执行。 (2)如果在UIViewController里面使用ASIHttprequest发送了async请求,并且将request的delegate设置为controller,若请求没

2014-03-05 14:18:42 465

原创 使用私有api实现自己的iphone桌面,并根据app的使用次数对app排序

使用《iphone SprintBoard部分私有API总结》中提到的api,除了能对app运行次数进行监控以外,还可以实现自己的iphone桌面,并根据app 的使用次数对app图标进行排序,从而将使用最频繁的app排在前面。看看下面的tab bar,这个可不是iphone自己的桌面噢,是app里面实现的桌面,同时里面的app图标是按照app执行的次数来排序的。 实现这个程序的原

2014-03-05 14:18:40 1090

原创 使用私有api统计ios app运行时间及次数

利用《iphone SprintBoard部分私有API总结》中提到的私有API,可以做很多越狱以前实现不了的事情。比如,利用一个后台运行的app,监控该iphone上所有app的运行次数及时间。

2014-03-05 14:18:38 2290

原创 iphone SprintBoard部分私有API总结

本文介绍iOS SrpintBoard框架的部分私有API,具体包括:获取ios上当前正在运行的所有App的bundle id(不管当前程序是在前台还是后台都可以)获取ios上当前前台运行的App的bundle id(不管当前程序是在前台还是后台都可以)根据ios app的bundle id得到其App名称、图标(不管当前程序是在前台还是后台都可以)直接通过App 的bundl

2014-03-05 14:18:36 1150

原创 NSInvocation简单总结

(1)用法 NSInvocation是调用函数的另一种方式,它将调用者,函数名,参数封装到一个对象,然后通过一个invoke函数来执行被调用的函数,其思想就是命令者模式,将请求封装成对象。例如,有这样一个类:@implementation CA-(int)AddA:(int)a andB:(int)b{         return a + b;}@end 

2014-03-05 14:18:34 667

原创 Objective C运行时(runtime)技术的几个要点总结

前言:         Objective C的runtime技术功能非常强大,能够在运行时获取并修改类的各种信息,包括获取方法列表、属性列表、变量列表,修改方法、属性,增加方法,属性等等,本文对相关的几个要点做了一个小结。目录:(1)使用class_replaceMethod/class_addMethod函数在运行时对函数进行动态替换或增加新函数(2)重载forwardingT

2014-03-05 14:18:32 548

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除