自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (1)
  • 收藏
  • 关注

原创 你所厌恶的正是别人渴望的

梦境越深,越难堕醒。——《盗梦空间》夏洛特别爱面子,但不巧的是,爱面子的夏洛处处在丢面子。从小就开始窝囊,班里排名第二傻;毕业后没工作,全靠老婆养着;高中班里的女神结婚,本想借着小舅子的玛莎拉蒂在老同学面前装一把,却无奈的被车门夹住了衣服,生拉硬扯总算扯下来;本以为自己租了一套很高级的西服就能提升自己的品味,结果推门进入礼堂,却发现和婚庆司仪装了杉,这次不仅是同学嘲笑他了,连司仪也开始调侃着他。夏

2015-10-02 19:41:26 944 1

原创 再看APP安全

堡垒最先从内部攻破。——列宁最安全的地方,同时也是最危险的地方。最近的两次苹果安全危机,一次是因为iCloud服务器,一次是因为开发者使用的Xcode。回顾XcodeGhost事件 简单地说,整个XcodeGhost事件的流程是这个样子的:某个黑产团队在国内云盘中上传了一个带毒的Xcode编译器,然后大规模扩散该下载链接,在强大的宣传团队的努力下,这个下载链接被成功的扩散了出去。因为APP st

2015-09-29 10:42:47 772

原创 iOS开发,使用keychain保存用户名密码

本文提供完整版demo,源码下载地址:GitHub Demo下载KeyChain是苹果提供的一种安全的保存用户名、密码、证书的方式,将敏感信息保存在keychain中后,这些信息不会随着app的卸载而丢失,除非开发人员在app中手动删除敏感信息,否则,这些信息将会一直保存在keychain中。在使用keychain时,我们首先要将security.framework引入到工程中。由于使用时

2015-06-25 16:38:02 1730

原创 iOS开发,谓词(NSPredicate)的用法:(二)谓词和正则表达式配合使用,进行表单内容判断

在上一篇中,我们聊了NSPredicate的基本用法:谓词的基本语法、谓词的定义和使用。在本篇中,我们聊聊NSPredicate和正则表达式的结合使用来进行表单内容的筛选。我们常常遇到这种需求:要求用户输入的用户名必须是字母、密码必须是数字、判断用户输入的手机号是否合法等等。这些需求我们就可以使用NSPredicate和正则表达式来配合筛选了。

2015-06-17 12:10:42 2094

原创 iOS开发,谓词(NSPredicate)的用法:(一)基本用法

在iOS开发中,系统提供了NSPredicate这个类给我们进行一些匹配、筛选操作,非常方便。在没有用这个类时,我们要获取两个数组中某些特定的元素时,需要写代码一一对比,但是使用了这个类,只需要三四行代码就够了。为了演示,先定义一个person类.h文件#import @interface Person : NSObject@property (nonatomic, cop

2015-06-17 11:32:40 3223

原创 iOS开发,Reveal的使用

故事的背景是这样的。王二最近换了一个新老板,产品团队是新的,测试团队是新的,只有他一个人干着iOS的开发工作,前有老板催促项目,后有测试堵截bug,好苦逼啊。。。本来,特意为产品给的设计图会是这样的但实际上,产品给的设计图是这样的:果然,理想很丰满,现实很骨感。苦逼的王二同学跑去问产品:“UI元素之间的尺寸怎么确定?”产品说:“你定吧,看着和原型图一样就行。”呵呵呵呵呵,这

2015-06-15 16:48:56 838

原创 iOS开发,定时器的使用

在iOS开发中,我们可以通过三种途径来实现定时调用某一个方法的功能。为了简便期间,我直接在Xcode中写代码以及注释。首先我们定义一个被定时执行的方法- (void)reloop { NSLog(@"循环执行");}下边我们分别讨论这三种方法1、使用NSTimer // 1、使用nstimer创建定时器 // A.自动加入主循环 NSTimer *ti

2015-05-19 14:05:37 1079

原创 iOS开发之指纹解锁

前一阵子一直在赶项目进度,没有太多时间写博客,现在终于空闲了,将以前欠下的博客补上来。在iOS8.0之后,API开放了指纹验证的功能。开放的API虽然只能用来作为验证使用,比较局限,但是对于有类似“手势密码”功能的app来说,已经足够用了。有了这个新api,就可以在app中再多一种高大上的解锁方式了。指纹验证功能的最低硬件支持为iPhone5s,iPad 6,iPad mini 3这些有t

2015-04-07 11:43:18 4698 1

原创 在iOS8.0之后的UIAlertView和UIActionSheet的新写法

在iOS8.0之后,苹果更新了UIAlertView和UIActionSheet的创建方法。在以前的版本中,这两个提醒用户的控件各自有自己的创建方法,但是在iOS8.0之后,使用了UIAlertController这个控制器类统一创建。不过之前的创建方法并没有在iOS8.0之后的版本中实效,依然可以正常使用。下边就记录下新的写法。首先看苹果API的示例写法:UIAlertControl

2015-03-14 13:31:22 1551

原创 iOS开发,创建自己的静态库

为什么要创建自己的静态库?嗯,是为了装13.好,作为一名优秀的程序猿,我是不会放过任何一个装13的技能的,今天就再分享一个技能——自己生成静态库。不开玩笑了,下边正式开始。一、用Xcode新建一个工程,如下:看清楚啦,一定要选中“static library”这个。二、给你的静态库命名,这一环节我就略过了。下图是我创建出来的工程2.1、在头文件中,将你想

2015-02-02 12:25:53 897

原创 ios开发之应用程序检查更新功能的实现

#pragma mark - 检查更新- (void)checkUpdateWithAPPID:(NSString *)APPID{ //获取当前应用版本号 NSDictionary *appInfo = [[NSBundle mainBundle] infoDictionary]; NSString *currentVersion = [appInfo obje

2015-01-23 09:56:56 1936

原创 iOS base64 加密解密

在使用过程中,直接将被类引入到项目中即可,不需要其它辅助类。使用示例:  将此通用类的头文件引入到目标类后,直接使用类名进行调用即可。NSString *str = [NSString stringWithFormat:@"YWE="]; NSString *str1 = [NSString stringWithFormat:@"aa"]; NSLog(@"resu

2015-01-20 13:56:34 812

原创 MJRefersh在iOS8中报错的解决办法

首先看报错信息:解决办法是:如下图操作1、2、

2015-01-19 09:43:19 520

原创 can't link with a main executable file for architecture armv7错误解决办法

报错信息类似于:ld: can't link with a main executable file '/Users/Name/Library/Developer/Xcode/DerivedData/Clumsy_Bird-gotvuaeuyvrkzvfqpzsuxpmifimu/Build/Products/Debug-iphoneos/Clumsy Bird.app/Clumsy Bird

2015-01-15 18:43:13 6396

原创 iOSapp如何撤销审核、下架

正在审核的;在binary details里边 reject按钮已经上架的:在itunesconnect里的app详情里面找到rights and pricing按钮选择specific storesiTunes Connect rights and pricing 然后选择Deselect alliTunes Connect specific stores取消所有地区选择后,在app详情里就

2015-01-15 10:36:50 3580

原创 xcode中,Architectures;Valid Architectures; Build Active Architecture Only的含义

iOS的App现在基本都是用llvm在编译,Xcode也提供了各种设置帮助你进行编译参数的设定。里面有一项就是设定编译的体系结构,涉及到的参数包括:Architectures、Valid Architectures和Build Active Architecture Only。      有些新手对这几个参数往往不知道怎么选择,这里简单介绍一下。      Architecture

2015-01-14 18:41:16 1488

原创 iOS开发使用AFNetworking

// 1. 需要加入SystemConfiguration.framework、MobileCoreServices.framework、Security.framework三个框架// 2. 消除警告在pch文件中添加 #import #import// 3. 引入AFNetworking框架 #import "AFNetworking.h"// 4. 下面是详细代码,包括:简单网络请求

2015-01-08 11:59:57 577

原创 iOS模仿Mac下输错密码时的抖动窗口

#pragma mark 抖动动画- (void)shakeAnimationForView:(UIView *) view{ // 获取到当前的View CALayer *viewLayer = view.layer; // 获取当前View的位置 CGPoint position = viewLayer.position; // 移动的两个终点位置

2015-01-08 11:56:17 797

原创 Xcode6下添加pch文件

1. cmd + N,选择Other > PCH File,创建新的PCH文件 2. 选择Project > Build Settings > Search "prefix header" 3. 在 'Apple LLVM 6.0' 下面有一个 'Prefix Header' 4. 添加 'YourProjectName/YourProject-Prefix.pch' 

2015-01-07 16:54:23 528

转载 iOS开发者账号申请步骤

来自伟大的小泽,原地址http://blog.sina.com.cn/s/blog_9c2363ad0102vfjw.html作为一名iOS开发工程师,有自己的一枚开发者账号,享受更多的服务,是最基本的事情。就好像你是程序员要有自己的MacBook一样。昨天新申请了一个账号,记录了一下过程,在此分享给大家。1. 首先,首先,你要有 VISA 或者 MasterCard 

2015-01-07 16:44:32 667

原创 ld: file not found 错误解决办法

file not found这个错误产生的原因有很多种,具体的解决办法需要根据报错信息具体处理。 我今天上午遇到的错误提示是:d: file not found: /Users/chenweidong/Library/Developer/Xcode/DerivedData/WanHao-bgcnskgmqpeizsfmbpcbxnysukqu/Build/Products/Debug-iphone

2015-01-04 12:20:46 7124

转载 iOS常见bug

1 xib 图片错位   laoutsubview  去掉对钩                             调整对其方式                              2 判断登陆注册的用户名密码 使用正则表达式//判断石否为数字或字母- (BOOL)validatePassword:(NSString *)email {    NSString *

2014-12-31 11:38:45 403

原创 UIViewController 中的一些管理视图控制器方法的小结

在iOS 5.0及以后,iOS为UIViewController类添加了新的属性和方法:@property(nonatomic,readonly) NSArray *childViewControllers -(void)addChildViewController:(UIViewController *)childController -(void)removeFromParentV

2014-12-29 15:27:22 735

转载 视图控制器的生命周期

# import "RootViewController.h"# import "RootView.h"@interface RootViewController ()#pragma mark - 声明私有属性@property (nonatomic, retain) NSMutableArray *allKeysMutableArray; // 存放所有的键@pr

2014-12-17 10:13:16 488

原创 在iOS8之后的远程推送写法

registerForRemoteNotificationTypes: is not supported in iOS 8.0 and later   IOS8 PUSH解决方法昨天晚上整理PUSH的东西,准备些一个教程,全部弄好之后,发现没有达到预期的效果,本以为是服务器代码的问题(因为本人对PHP代码一点都不懂),所以在网上四处搜索,后来看xcode log才发现,原来

2014-12-16 10:30:02 529

转载 iOS App 账号转移 图文详解

此文章只是为了记录一个Apple ID下的APP,转移到另外一个Apple ID 账户下。为了说的清楚下面用A账户(有App,要转出去)B账户(接收A账户App,接收者),来说明。1、      登录APPLE 开发者中心(http://developer.apple.com),使用A账户登录。2、      MemberCenter3、      Ma

2014-12-01 10:07:27 5148

原创 引用GDataXML时系统相关配置

1.下载链接:http://code.google.com/p/gdata-objectivec-client/downloads/list下载“gdata-objective-c client library.”2.项目引入: 解压缩文件,找到Source\XMLSupport,并且将其中的GDataXMLNode.h 和 GDataXMLNode.m文件拖到项目中3. 项目编译支持

2014-11-27 10:16:20 426

转载 通过开发者账号导出开发证书、发布证书及p12文件

为什么要导出.p12文件当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)如图:这时候,再点击“+”时,就会发现点击不了开发和发布证书,也就是添加不了

2014-11-26 16:11:14 4313

原创 iOS开发中的MD5加密实现

公司接口需要MD5加密,找了一段加密代码,分享一下。需要在程序中引入#import 代码如下:#pragma mark md5加密算法- (NSString *)md5HexDigest:(NSString *)url{ const char *original_str = [url UTF8String]; unsigned char result[C

2014-11-25 19:28:19 996

原创 在Xcode6+中使用xib代替storyBoard的操作步骤

废话不多说,直接上图解:第一步、使用Xcode6+创建一个工程1.1创建完毕后选中"TARGETS"1.2 找到这个页面的“Deployment Target”,将"Main Interface"清空第二步,新建一个xib文件2.1选择"User Interface"中的view就可以创建一个xib文件2.2 给这个xib文件命名

2014-11-25 18:47:45 2462

原创 纪录:[NSNull null]的一个用法

今天在网络请求数据时遇到了这个现象返回的结果中,news_title为“”。这个怎么判断呢?可以使用if(dic != [NSNull null])判断有没有值他表示有对象,但没有内容。nil表示没有这个对象,Null表示有对象,但没有内容,大概这么理解 。

2014-11-25 18:44:10 475

原创 通过itunes store向iOS设备安装测试版(未上线)的程序

最近在开发IOS应用项目时遇到一个问题:我们想把测试程序发送给客户试用,但客户和我们不在一个地方,也就是拿不到他们的设备。我想应该有很多开发者也会遇到类似的问题,我最近通过网上的资料和实践也算解决了这个问题,下面就把方法分享一下,供大家参考。1.拿到用户设备的UDID号。2.登陆苹果开发中心,然后在 iOS Provisioning Portal 里面将用户的设备号添加进去。这一步

2014-11-19 16:21:03 1650

原创 iOS上线app 过户办法

x在iTunesConnect中进入你要转移的应用,在App Information栏中点击右下方的Transfer App进行操作.如果应用可以转移,在接下来的页面点击右下方会有continue按钮,点击该按钮进入提交页输入接收方的apple id和team id后点击continue即可。

2014-11-19 13:48:55 1865

原创 App(iOS版)测试要点

今日公司新上移动客户端项目,ce shi

2014-11-19 11:20:44 2756

原创 单例模式在iOS中的应用——三种创建单例方法对比

单例模式优点单例模式在内存中只有一个实例,减少了内存开支。特别是一个对象需要频繁的创建、销毁时,而创建与销毁的性能有无法优化,单例模式的优势就非常明显。单例模式只生成一个实例,减少了系统性能开销,当一个对象的产生需要比较多的资源时,如读取配置、产生其他依赖对象时,则可以通过在应用启动时直接产生一个单例对象,然后永久驻留内存的方式来解决。单例模式可以避免对资源的多重占用。单例模式可以在系统设

2014-11-10 21:22:09 1877

原创 iOS开发——网络编程

//// ViewController.m// 网络编程//// Created by Quanzheng on 14-9-10.// Copyright (c) 2014年 QuanZHeng. All rights reserved.//#import "ViewController.h"#define BASE_URL @"http://project.lanou3

2014-11-08 22:14:53 519

原创 iOS开发中的kvo机制

KVO:(Key-Value-Observer)键值观察者,是观察者设计模式的一种具体实现。KVO触发机制:一个对象(观察者),监测另一对象(被观察者)的某属性是否发⽣生变 化,若被监测的属性发生的更改,会触发观察者的一个方法(方法名固定,类似代理方法)KVO使用步骤:
 1、注册观察者(为被观察者指定观察者以及被观察属性)
 2、实现回调方法
 3、触发回调方法(被观察属性发⽣生更改)


2014-11-08 22:11:24 443

原创 多线程编程——创建线程的三种方法

/** *  获取网络数据、处理大批量数据、使用到一些比较耗时的算法时,需要使用子线程处理 */1、创建子线程有三种方法(1)、NSThread(2)、NSOperationQueue(3)、GCD2、使用NSThread创建子线程// 开启一个子线程,把for循环交给子线程完成(每触发一次就创建一个线程)    NSThread *

2014-11-08 22:07:59 1029

原创 苹果远程通知(push)流程

1、手机向apns请求2、apns返回给手机一个token3、手机将token发给应用程序的后台4、后台将tolen发给apns5、后台有推送后,将推送交给apns,apns转发给手机应用

2014-11-08 22:06:18 560

原创 IOS 消息机制(NSNotificationCenter)

消息机制 NSNotificationCenter 一直都在频繁使用,但是却对其原理不是十分了解。今天就花些时间,把消息机制原理重头到尾好好过一遍。iOS 提供了一种 "同步的" 消息通知机制,观察者只要向消息中心注册, 即可接受其他对象发送来的消息,消息发送者和消息接受者两者可以互相一无所知,完全解耦。这种消息通知机制可以应用于任意时间和任何对象,观察者可以有多个,所以消息具有广

2014-11-08 22:02:30 518

c语言第一讲:c基础

c语言第一讲:c基础

2015-09-22

空空如也

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

TA关注的人

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