摘要: 转:http://blog.csdn.net/showhilllee/article/details/8631734APNS的推送机制首先我们看一下苹果官方给出的对ios推送机制的解释。如下图Provider就是我们自己程序的后台服务器,APNS是Apple Push Notification Service的缩写,也就是苹果的推送服务器。上图可以分为三个阶段:第一阶段:应用程序的服务器端把要发送的消息、目的iPhone的标识打包,发给APNS。第二阶段:APNS在自身的已注册Push服务的iPhone列表中,查找有相应标识的iPhone,并把消息发送到iPhone。第三阶段:iPhone把发 阅读全文
posted @ 2014-01-02 10:40 Ethan_村长 阅读(5866) 评论(0) 推荐(1) 编辑
摘要: store:http://itunes.apple.com/us/app/shui-shui-bo-ke-yuan/id512394144?ls=1&mt=8越狱版下载链接 阅读全文
posted @ 2013-12-30 18:42 Ethan_村长 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 命令解释breakNUM在指定的行上设置断点。bt显示所有的调用栈帧。该命令可用来显示函数的调用顺序。clear删除设置在特定源文件、特定行上的断点。其用法为:clearFILENAME:NUM。continue继续执行正在调试的程序。该命令用在程序由于处理信号或断点而导致停止运行时。displayEXPR每次程序停止后显示表达式的值。表达式由程序定义的变量组成。fileFILE装载指定的可执行文件进行调试。helpNAME显示指定命令的帮助信息。infobreak显示当前断点清单,包括到达断点处的次数等。infofiles显示被调试文件的详细信息。infofunc显示所有的函数名称。info 阅读全文
posted @ 2013-12-13 15:11 Ethan_村长 阅读(2662) 评论(0) 推荐(0) 编辑
摘要: av_register_all();//初始化ffmpeg库,如果系统里面的ffmpeg没配置好这里会出错 if (isNetwork) { //需要播放网络视频 avformat_network_init(); } avformat_open_input();//打开视频文件 avformat_find_stream_info();//查找文件的流信息 av_dump_format();//dump只是个调试函数,输出文件的音、视频流的基本信息了,帧率、分辨率、音频... 阅读全文
posted @ 2013-02-19 10:24 Ethan_村长 阅读(8307) 评论(0) 推荐(2) 编辑
摘要: UITextView *text=[[UITextView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)]; [self.view addSubview:text]; __block int count=0; //异步并行处理 dispatch_async(dispatch_get_global_queue(0, 0), ^(){ for (int i=0; i<100; i++) { usleep(10000); count=count+i; } ... 阅读全文
posted @ 2013-02-18 10:44 Ethan_村长 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 我使用的配置:xcode4.5,IOS6.0,ipad 1(4.3)一、准备资源1. 到https://github.com/gabriel/ffmpeg-iphone-build下载ffmpeg-iphone-build2.先将gas-preprocessor.pl拷贝到/usr/sbin/目录中。3.到这里下载最新的ffmpeg:http://ffmpeg.org/download.html或者命令行安装:git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg二、编译4.然后到命令行下到ffmpeg的目录下,执行:下面的命令中,在mac10. 阅读全文
posted @ 2013-02-17 18:25 Ethan_村长 阅读(4904) 评论(0) 推荐(0) 编辑
摘要: @interface NSURLRequest(ForSSL)+(BOOL)allowsAnyHTTPSCertificateForHost:(NSString*)host;+(void)setAllowsAnyHTTPSCertificate:(BOOL)allow forHost:(NSString*)host;@end@implementation NSURLRequest(ForSSL)+(BOOL)allowsAnyHTTPSCertificateForHost:(NSString*)host{ return YES;}+(void)setAllowsAnyHTTPSCerti... 阅读全文
posted @ 2013-01-23 18:40 Ethan_村长 阅读(6409) 评论(0) 推荐(0) 编辑
摘要: 1.单线程:禁用所有的mutex锁,并发使用时会出错。当SQLite编译时加了SQLITE_THREADSAFE=0参数,或者在初始化SQLite前调用sqlite3_config(SQLITE_CONFIG_SINGLETHREAD)时启用。2.多线程:只要一个数据库连接不被多个线程同时使用就是安全的。源码中是启用bCoreMutex,禁用bFullMutex。实际上就是禁用数据库连接和prepared statement(准备好的语句)上的锁,因此不能在多个线程中并发使用同一个数据库连接或prepared statement。当SQLite编译时加了SQLITE_THREADSAFE=2参 阅读全文
posted @ 2012-12-10 16:58 Ethan_村长 阅读(7026) 评论(0) 推荐(0) 编辑
摘要: 原文地址:http://www.codza.com/free-iphone-app-version-from-the-same-xcode-projectThere are more than 15,000 apps in the app store and hundreds are added daily. You need a way to show off your awesome creation to the millions of potential buyers.One of the most effective marketing tools for small fish is 阅读全文
posted @ 2012-11-09 15:51 Ethan_村长 阅读(2805) 评论(0) 推荐(0) 编辑
摘要: 由于iPhone这类移动设备内存有限,而又不能使用交换区,为了不至于导致内存不足而引起运行效率降低或应用崩溃,有时候需要获取当前的内存状况,以决定采用的缓存策略。不过iOS SDK文档里并没有提及这种底层的API,于是我搜了一番,找到了host_statistics()这个函数。参数虽然很多,但基本上都是固定的值,我也就不解释,直接上代码了:#include<mach/mach.h>BOOLmemoryInfo(vm_statistics_data_t*vmStats){mach_msg_type_number_tinfoCount=HOST_VM_INFO_COUNT;kern_ 阅读全文
posted @ 2012-08-15 11:21 Ethan_村长 阅读(5423) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2012-08-12 13:56 Ethan_村长 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 1) Down load that code and open it in Unity 3.3 (will upgrade the project)2) Change the bundle identifier and set the SDK to iOS latest3) Delete the file Mono.Data.SqliteClient in the Assets/Plugins folder4) Drag into Assets/Plugins folder a copy of Mono.Data.Sqlite from the Unity.app . Right click 阅读全文
posted @ 2012-07-19 15:45 Ethan_村长 阅读(2984) 评论(0) 推荐(0) 编辑
摘要: -(void)loadAllBundleImage{NSArray*imagesPath=[NSBundlepathsForResourcesOfType:@"png"inDirectory:[[NSBundlemainBundle]bundlePath]];for(NSString*ainimagesPath){NSData*idata=UIImagePNGRepresentation([UIImageimageWithContentsOfFile:a]);[selfwriteApplicationData:idatatoFile:[alastPathComponent] 阅读全文
posted @ 2012-06-24 10:55 Ethan_村长 阅读(977) 评论(1) 推荐(0) 编辑
摘要: 1.self.view.autoresizesSubviews = NO;2. 新增的UIVIEW 不要使用[keywindow addsubView:] 阅读全文
posted @ 2012-06-19 11:46 Ethan_村长 阅读(882) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2012-06-18 12:28 Ethan_村长 阅读(3) 评论(0) 推荐(0) 编辑
摘要: -(void)viewDidLoad{[superviewDidLoad];//block1inti=10;//在block块只读__blockintj=1;//在block可以修改的变量int(^myblock)(int)=^(intnum){//可使用作用域内的变量j=10;returnnum*i;};NSLog(@"%d",myblock(10));[selftestBlock:^(NSString*str){NSLog(@"%@",str);}];}//block做参数-(void)testBlock:(void(^)(NSString*str) 阅读全文
posted @ 2012-06-05 17:06 Ethan_村长 阅读(500) 评论(0) 推荐(0) 编辑
摘要: intOpenEAGL_UnityCallback(UIWindow**window,int*screenWidth,int*screenHeight,int*openglesVersion){...[_windowmakeKeyAndVisible];[viewrelease];IOSRootViewController*_IOSview=[[IOSRootViewControlleralloc]init];[_windowaddSubview:_IOSview.view];[_IOSviewrelease];...}在这个函数添加的view可以在其他视图中查找引用到for(UIView*v 阅读全文
posted @ 2012-05-16 12:05 Ethan_村长 阅读(908) 评论(0) 推荐(0) 编辑
摘要: 1) anchorPoint为了将一个矩形图像精准的放置在屏幕某一个位置上,需要设置该矩形的位置参考 点(人们通常习惯亍将该参考点是、认为是该矩形的左上角那个点)。CocosNode 的该属性就是返个参考点。x,y 轴挄照 OpenGL ES 坐标系,数值采用相对自身宽、高的比例。 2) Position CocosNode 对象的实际 OpenGL ES 坐标。 如下图说明了如何利用返两个属性来设定 CocosNode 对象的位置: 图中红色矩形框的 Position 为(5,5),anchorPoint 为(0.3, 0.5)。若要选择图中 紫色大圆点 A 为 anchorPoint 则设 阅读全文
posted @ 2012-05-03 15:07 Ethan_村长 阅读(1195) 评论(0) 推荐(0) 编辑
摘要: - (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight 这个函数是UIImage的一个实例函数,它的功能是创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。根据设置的宽度和高度,将接下来的一个像素进行左右扩展和上下拉伸。注意:可拉伸的范围都是距离leftCapWidth后的1竖排像素,和距离topCapHeight后的1横排像素。参数的意义是,如果参数指定10,5。那么,图片 阅读全文
posted @ 2012-04-25 10:29 Ethan_村长 阅读(31664) 评论(2) 推荐(2) 编辑
摘要: 1. 在任意一个源文件中使用一下这个class,比如NSLog(@”%@”, classA);2. 在project的Info里面的Link Flag处,增加-all_load 阅读全文
posted @ 2012-04-20 14:52 Ethan_村长 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 睡睡版博客园阅读器第二版发布下载了。 漫长的审核期,让人热心沸腾等到广州暴雨、白天如黑昼、迟到湿身般,天气变化的如IT界技术更新般快。 第二版的开发使用了官方提供的接口,在功能和细节上做了添加和修改。下载地址 http://itunes.apple.com/us/app/shui-shui-bo-ke-yuan/id512394144?ls=1&mt=8 2. 更新内容 1.添加按收藏作者博客2.添加作者头像显示3.改善收藏文章功能4.改善板块显示5.添加所有列表 3.后续版本 第二版已经在阅读上功能上做的很细,至少对于非官方的来说。对于用户这块,包括发布、闪存之类的,官方并没有... 阅读全文
posted @ 2012-04-20 10:42 Ethan_村长 阅读(2466) 评论(14) 推荐(4) 编辑
摘要: Untiy导出的ios都是单视图的程序,如果要在这个视图上添加其他视图的方法:-(void)applicationDidFinishLaunching:(UIApplication*)application{printf_console("->applicationDidFinishLaunching()\n");if([UIDevicecurrentDevice].generatesDeviceOrientationNotifications==NO)[[UIDevicecurrentDevice]beginGeneratingDeviceOrientationNo 阅读全文
posted @ 2012-04-01 11:19 Ethan_村长 阅读(1695) 评论(0) 推荐(0) 编辑
摘要: 在类中添加新方法,新添加的方法优先级最高@interfaceNSMutableDictionary(Taobao)-(NSString*)urlString;@end@implementationNSMutableDictionary(Taobao)-(NSString*)urlString{return@"test";}@end 阅读全文
posted @ 2012-03-30 17:56 Ethan_村长 阅读(205) 评论(0) 推荐(0) 编辑
摘要: //发送通知UILocalNotification*notification=[[UILocalNotificationalloc]init];if(notification!=nil){NSDate*now=[NSDatenew];notification.fireDate=[nowdateByAddingTimeInterval:10];//10秒后通知notification.repeatInterval=0;//循环次数,kCFCalendarUnitWeekday一周一次notification.timeZone=[NSTimeZonedefaultTimeZone];notific 阅读全文
posted @ 2012-03-29 16:15 Ethan_村长 阅读(11755) 评论(0) 推荐(0) 编辑
摘要: 下载地址:http://itunes.apple.com/us/app/shui-shui-bo-ke-yuan/id512394144?ls=1&mt=8特点:不依赖博客园RSS,能够获取所有的文章能过在线搜索所有博客文章文章收藏到本地,离线浏览分版块浏览为了这个免费app,我特意花了99美元去注册一个开发者账号,希望大家多多支持,目前第二版正在开发中将加入以下功能:按作者浏览博客收藏作者博客地址将收藏文章图片缓存到本地按目录收藏博客文章一键收藏当天文章到本地PS:我美工很糟糕,跪求有心的设计大哥为第二版做一些美工。预览图片: 阅读全文
posted @ 2012-03-29 12:04 Ethan_村长 阅读(9167) 评论(54) 推荐(17) 编辑
摘要: 项目设计到多个平台,所有底层函数名都是统一的,这就要求IOS这边的函数必须动态执行。-(void)executefunction:(NSString*)funciontName{NSLog(@"%@",funciontName);[selfperformSelector:(SEL)("test_function")];char*f="test_function";[selfperformSelector:(SEL)(f)]; //使用NSString[selfperformSelector:NSSelectorFromString(f 阅读全文
posted @ 2012-03-28 17:38 Ethan_村长 阅读(1498) 评论(0) 推荐(0) 编辑
摘要: 各种语言都有些传递函数的方法:C语言中可以使用函数指针,C++中有函数引用、仿函数和lambda,Objective-C里也有选择器(selector)和block。不过由于iOS SDK中的大部分API都是selector的方式,所以本文就重点讲述selector了。Objective-C和我接触过的其他面向对象的语言不同,它强调消息传递,而非方法调用。因此你可以对一个对象传递任何消息,而不需要在编译期声名这些消息的处理方法。很显然,既然编译期并不能确定方法的地址,那么运行期就需要自行定位了。而Objective-C runtime就是通过“id objc_msgSend(id theRec 阅读全文
posted @ 2012-03-28 10:39 Ethan_村长 阅读(2826) 评论(0) 推荐(1) 编辑
摘要: CAPropertyAnimation:它是CAAnimation的一个抽象子类,支持层在动画期间为层提供key path。 阅读全文
posted @ 2012-03-27 12:14 Ethan_村长 阅读(725) 评论(0) 推荐(0) 编辑
摘要: CATranstion:提供了影响整个层内容过渡的效果,在动画期间它使层产生fade(渐变),push(推拉)以及reveals(揭示)的动画效果。这些过渡的效果可以通过你自己自定义的core image filters来扩展。引用:http://hi.baidu.com/vbkan/blog/item/8b3314ca1b1da85ef31fe7d4.html http://blog.sina.com.cn/s/blog_74d748180100qi8e.html实现iphone漂亮的动画效果主要有两种方法,一种是UIView层面的,一种是使用CATransition进行更低层次的控制... 阅读全文
posted @ 2012-03-27 12:11 Ethan_村长 阅读(2042) 评论(0) 推荐(0) 编辑
摘要: CAkeyframeAnimation:提供了关键帧动画的支持。你可以为层属性指定key path来使其产生动画,这个数组的值保存了动画每个阶段的值,同时还有key frame的次数和时间函数。在动画运行的时候,数组中的每个值就会被轮流进行插值使用。-(void)viewDidLoad{[superviewDidLoad];self.title=[[selfclass]displayName];self.view.backgroundColor=[UIColorblackColor];CGFloatradius=30.0f;CGFloatdiameter=radius*2;CGPointarc 阅读全文
posted @ 2012-03-27 11:40 Ethan_村长 阅读(6694) 评论(0) 推荐(0) 编辑
摘要: 使用UIBezierPath类可以创建基于矢量的路径。此类是Core Graphics框架关于path的一个封装。使用此类可以定义简单的形状,如椭圆或者矩形,或者有多个直线和曲线段组成的形状。1.Bezier Path 基础UIBezierPath对象是CGPathRef数据类型的封装。path如果是基于矢量形状的,都用直线和曲线段去创建。我们使用直线段去创建矩形和多边形,使用曲线段去创建弧(arc),圆或者其他复杂的曲线形状。每一段都包括一个或者多个点,绘图命令定义如何去诠释这些点。每一个直线段或者曲线段的结束的地方是下一个的开始的地方。每一个连接的直线或者曲线段的集合成为subpath。一 阅读全文
posted @ 2012-03-27 11:24 Ethan_村长 阅读(1808) 评论(0) 推荐(0) 编辑
摘要: 关于UIView动画:[UIView beginAnimations:@"zoom out"context:nil];[UIView setAnimationDuration:1.f];[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];cover.transform=CGAffineTransformMakeScale(9.25,7.05);cover.center=CGPointMake(430,512);[UIView commitAnimations]UIView动画是应用在一个view上面的。关于CABas 阅读全文
posted @ 2012-03-26 18:34 Ethan_村长 阅读(2364) 评论(0) 推荐(1) 编辑
摘要: CABasicAnimation:为层的属性提供了简单的插值 //需要改变的属性CABasicAnimation*animation=[CABasicAnimationanimationWithKeyPath:@"cornerRadius"];animation.fromValue=[NSNumbernumberWithFloat:0.0f];animation.toValue=[NSNumbernumberWithFloat:40.0f];//执行时间animation.duration=10.0;//执行次数animation.repeatCount=2; [layer 阅读全文
posted @ 2012-03-26 18:33 Ethan_村长 阅读(1780) 评论(0) 推荐(0) 编辑
摘要: UIKit中包含了UIGestureRecognizer类,用于检测发生在设备中的手势。UIGestureRecognizer是一个抽象类,定义了所有手势的基本行为,它有下面一些子类用于处理具体的手势: 1、拍击UITapGestureRecognizer (任意次数的拍击) 2、向里或向外捏UIPinchGestureRecognizer (用于缩放) 3、摇动或者拖拽UIPanGestureRecognizer 4、擦碰UISwipeGestureRecognizer (以任意方向) 5、旋转UIRotationGestureRecognizer (手指朝相反方向移动) 6、长按UILon 阅读全文
posted @ 2012-03-26 18:06 Ethan_村长 阅读(778) 评论(0) 推荐(0) 编辑
摘要: CATransaction 事务类,可以对多个layer的属性同时进行修改.它分隐式事务,和显式事务.区分隐式动画和隐式事务:隐式动画通过隐式事务实现动画 。区分显式动画和显式事务:显式动画有多种实现方式,显式事务是一种实现显式动画的方式。1.隐式事务除显式事务外,任何对于CALayer属性的修改,都是隐式事务.这样的事务会在run-loop中被提交.-(void)viewDidLoad{//初始化一个layer,添加到主视图layer=[CALayerlayer];layer.bounds=CGRectMake(0,0,200,200);layer.position=CGPointMake( 阅读全文
posted @ 2012-03-26 17:52 Ethan_村长 阅读(17502) 评论(3) 推荐(0) 编辑
摘要: 在工程info.plist文件中手动加入 MinimumOSVersion | 3.1.2 设置,就能实现4.0编译的程序在3.1.2固件上运行 阅读全文
posted @ 2012-03-26 13:25 Ethan_村长 阅读(1823) 评论(0) 推荐(0) 编辑
摘要: 方法一:给Cube添加rigidbody,然后代码rigidbody.AddTorque (10, 0, 0);将使Cube沿X轴翻滚方法二:Cube没有添加rigidbody,利用以下代码计算翻滚//Repostingthisnon-workinganswerbecauseitwasunreadablewhenpostedasacommenttothepreviousanswervarcubeSize:float=1;varcubeSpeed:float=80;privatevartotalRotation:float=0;//determinesifwe'repastthe90de 阅读全文
posted @ 2012-03-21 11:57 Ethan_村长 阅读(385) 评论(0) 推荐(0) 编辑
摘要: #import<UIKit/UIKit.h>#import<MapKit/MapKit.h>@interfaceUserLocationViewController:UIViewController<MKMapViewDelegate>{MKMapView*mapView;UIButton*btn;}@property(nonatomic,retain)MKMapView*mapView;@property(nonatomic,retain)UIButton*btn;-(void)btnPressed:(id)sender;@end -(void)viewD 阅读全文
posted @ 2012-03-14 09:48 Ethan_村长 阅读(8229) 评论(1) 推荐(0) 编辑
摘要: 方法一:将设置显示试图的高度-(void)makeTabBarHidden:(BOOL)hide{if([self.tabBarController.view.subviewscount]<2){return;}UIView*contentView;if([[self.tabBarController.view.subviewsobjectAtIndex:0]isKindOfClass:[UITabBarclass]]){contentView=[self.tabBarController.view.subviewsobjectAtIndex:1];}else{contentView=[ 阅读全文
posted @ 2012-03-14 09:42 Ethan_村长 阅读(3036) 评论(0) 推荐(0) 编辑
摘要: - (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{return UITableViewCellEditingStyleDelete | UITableViewCellEditingStyleInsert;}关于如何取得所选择的行,两个办法1)通过delegate方法didselect和diddeselect来获取记录2)通过运行时拿到UITableView的私有成员变量_selectedIndexPath 阅读全文
posted @ 2012-03-11 22:33 Ethan_村长 阅读(725) 评论(0) 推荐(0) 编辑