自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(203)
  • 资源 (11)
  • 收藏
  • 关注

原创 Macos配置Jenkins自动打包环境-iOS篇

最近准备着手搭建一些方便团队开发工作顺利进行的工具平台,首先就从Jenkins打包开始吧。其实关于ios的自动化打包文章在网上已经有N篇了,但我还是决定要写下这边文章,不是为了庆祝自动打包成功,而是为了记录在成功之前遇到的所有问题的梳理和总结,能够直接或者间接的帮助到需要的客官。ok,那我们就开始正经的扯淡。1. 安装Jenkins此过程将一笔...

2018-09-30 19:18:00 551

原创 iOS梅开二度 - GCD之计数信号量(dispatch_semaphore_t)

文章必须有一个前言:在默默coding的时候,涉及到了一个点,就是某块代码的执行受到某一个变量的限制,如果当前变量为YES,则可以执行此块代码,但并不知道这个变量会在什么时候设置为YES;比较直接的思路就是监听变量值得变化,从而决定是否执行代码;不过还是想看看有没有更好(高大上)的方式,于是乎思虑万千,“等待”、“允许执行”、、、这几个词语轮回旋转,wait,对哦,信号量是个好东西,由此有了今...

2018-09-17 14:54:20 688

原创 iOS梅开二度 - 手势键盘的处理 (嗷嗷待哺版本)

写在文章的最前面:时隔三年半,我又重新拾起了博客,这三年多可能是我最飘忽不定的几年,也有诸多的感慨和体悟,本想专写一篇文章来对这几年的经历做一个总结,但每当要起头的的时候,都会不知所措,也可能是感触太多容易上头,也有可能是担心自己太过于多愁善感,索性就写在三年后的第一篇博客里面作为开头语吧。人生真的就是起起伏伏,从14年底加入到了一个新的家庭,对,我称之为“家庭”。可能是我运气不太坏进入到...

2018-09-08 11:20:51 646

原创 IOS-使用framework实现功能模块动态更新

测试Xcode版本为6.1.1实现过程简述:把想要的作为动态更新的模块,移动到我们创建的Framework工程中,然后得到我们想要的动态库文件,把此文件再通过iTunes放到“主程序”项目的document文件夹下,从而实现从主程序中去加载此动态库,从而实现功能模块的动态更新效果。理想效果为支付宝APP,而支付宝采用的是HTML5(网页)的形式实现的,这是目前最通用的实现方式,但是不适用于复杂

2015-03-05 13:54:06 25050 18

原创 程序员回忆录:向自己走过的那些年致敬

一篇菜鸟程序员的两年,仅献给和我一样在迷茫或者在求职的人和我自己。

2014-12-09 18:31:51 5035 8

原创 IOS-筛选数组内的元素

遍历数组,移除不需要的元素的方法

2014-12-03 17:04:28 21234

原创 GCD的简单用法

GCD的一些基本方法的简单用法

2014-05-12 16:04:19 6702

原创 获取照片的属性信息

获取照片的属性信息,比如gps,拍摄时间等。

2013-08-21 18:02:38 11105 4

原创 IOS百度地图开发系列-控件的圆角设置

ios控件的拥有弧度的圆角设置

2013-08-20 10:59:23 4509 2

原创 IOS百度地图开发系列-百度地图不能正常显示

百度地图不能正常显示,只显示灰色网格。

2013-08-14 10:17:07 43546 19

原创 "library not found for - "解决办法

library not found for -

2013-08-13 16:43:23 67326 1

原创 ios检测设备摄像头、指南针、录音、陀螺仪的状态

检测ios设备摄像头、指南针、录音、陀螺仪的状态

2013-07-05 11:18:15 6194

原创 IOS-录音功能

初始化AVAudioRecorder并设置录音的参数和存储地址://录音设置 NSMutableDictionary *recordSetting = [[[NSMutableDictionary alloc]init] autorelease]; //设置录音格式 AVFormatIDKey==kAudioFormatLinearPCM [recordSetting

2013-06-14 11:33:50 20730

原创 CGAffineTransformMakeRotation 实现旋转

实现一张图片的旋转部分角度显示:UIImageView *image = [[UIImageView alloc]init]; image.frame = CGRectMake(50, 50, 200, 200); image.image = [UIImage imageNamed:@"460.jpg"]; [self.view addSubview:image];

2013-06-05 17:48:26 53902 4

原创 IOS成长之路-使用系统默认声音、震动

导入框架:代码:#import #import @interface MsgPlaySound : NSObject{ SystemSoundID sound;//系统声音的id 取值范围为:1000-2000}- (id)initSystemShake;//系统 震动- (id)initSystemSoundWithName:(NSString

2013-05-31 17:23:58 61124 8

原创 IOS成长之路-检测耳机插入/拔出

导入苹果的两个框架是必不可少的环节。。。代码部分+小解:- (void)viewDidLoad{ [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. AudioSessionInitialize (NULL, NULL,

2013-05-29 18:57:20 9463 2

原创 关于self.view.frame.size.width赋值会出现expression is not assignable 错误

下面的资料来自于:http://segmentfault.com/q/1010000000177216  self.view.frame.size.height = 100f;这样写没法通过编译,编译器会报错"expression is not assignable"原因是,这句话里面的几个点有两种不同的含义。self.view.frame是Objective-

2013-05-24 11:24:59 9382 1

原创 property's synthesized getter follows Cocoa naming convention for returning 'owned' objects

You own any object you createYou create an object using a method whose name begins with “alloc”, “new”, “copy”, or “mutableCopy” (for example, alloc, newObject, or mutableCopy).一定要注意命名规范,不能以

2013-05-22 10:55:12 9129 1

原创 linker command failed with exit code 1 (use -v to see invocation)

这个问题的原因是 在 TARGETS -->  Build Phases ---> Compile Sources 里面的某个.m文件多了一个或者少了一个1、多了一个,就是有两个相同的.m文件存在,在报出的bug中,会告诉我们,这个时候我们删除一个就好了2、少了一个,就是我们项目中.m 文件有 未添加进来的,点击左下角的加号,然后把未添加的.m文件添加进来

2013-05-17 10:02:51 23160 7

原创 IOS成长之路-NSMutableURLRequest实现Post请求

NSData *bodyData = [[bodyString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]dataUsingEncoding:NSUTF8StringEncoding];//把bodyString转换为NSData数据NSURL *serverUrl = [[NSURL URLWithString

2013-03-29 10:38:59 41794 1

原创 IOS成长之路-ASIFormDataRequest实现上传图片

UIImage *im = [UIImage imageWithContentsOfFile:path];//通过path图片路径获取图片 NSData *data = UIImagePNGRepresentation(im);//获取图片数据 /* ios中获取图片的方法有两种,一种是UIImageJPEGRepresentation ,一种是UIImagePNGRep

2013-03-29 10:13:26 14473 5

原创 svn: The log message is a pathname (was -F intended?); use '--force-log' to override

这个问题是因为在xcode使用svn上传项目的时候,如果在这个地方输入的名称与服务器上已经存在的名称冲突会报出这个错误,而且不能上传。要不然就是用 --force-log来强制上传

2013-03-14 19:14:11 5210

原创 CoreData-processPendingChanges和save

processPendingChanges改变当前对象的状态图; processPendingChanges类似于告诉字处理器在文档的编辑后更新它的内部状态,但不保存到磁盘。多用于用户界面上 更新数据;processPendingChanges常用在单独线程上运行多个上下文;  在MacOS下,它发挥了更大,更普遍的作用;save保存到磁盘;调用

2013-02-25 18:36:41 3873

原创 CoreData-实现数据永久性保存时产生的问题

在使用coredata 的时候,需要永久性保存数据, 使用 NSManagedObjectContext的 sava: 方法来实现。在这个过程中发现各种不能保存,于是乎花了两天的时候来解决它,搜寻各种办法,不过找到的办法无数却始终解决不了我的问题,最后发现了我的问题所在,却让我哭笑不得。总结在保存的时候遇到问题的解决办法:1、使用了多个线程操作同一个 NSManagedObject

2013-02-25 18:11:02 7417 1

原创 addsubview 的内存管理机制

本文章转载自:http://blog.sina.com.cn/s/blog_884e78b20100tmk8.htmlOC 属于C系列的语言,当然在编写程序的过程中当然也应该遵守C语言谁申请谁释放内存的原则。在这里我想说的是在IOS编程过程中经常会会用到的一个函数addSubview。在我们调用这个函数(比如是[self.view addSubview:tableview])之后,ta

2013-02-06 14:33:18 2212

原创 修改电脑WIFI网络的连接密码

当无线网络的密码被修改后,我们电脑的无线连接密码也要修改,过程:1、点击屏幕右上方的无线图标 。下拉菜单中的 打开网络偏好设置2、点击WIFI中的 高级 按钮3、点击 ‘-’ 号把想要修改的无线网络删除4、点击 ‘+’ 添加无线网络,把你想要使用的无线网络添加进去点击 选取网络 按钮:选取网络选取想要添加的网络,然后点击  好5、

2013-01-21 11:58:07 15254

原创 Could not change executable permissions on the application

Could not change executable permissions on the application.这个错误是因为 证书我们用了两次。就是说在真机上已经有了一个用了此证书的项目存在,只要把之前的项目从真机上删掉,这个项目就可以使用了。主要是会在使用推送的时候遇到这个问题,因为推送需要去申请一个推送的证书,而这个证书只能同时存在于一个项目中(真机中)。正所谓一山不容二虎。。

2013-01-21 10:50:07 3332

原创 iOS成长之路-获取系统键盘的高度

NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter]; //UIKeyboardWillShowNotification键盘出现 [defaultCenter addObserver:self selector:@selector(keyboardWillShow:) name:UIKe

2013-01-10 11:00:13 4943

原创 IOS成长之路-调用照相机和相册功能

打开相机://先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库 UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera;// if (![UIImagePickerController isS

2013-01-04 17:05:44 104169 3

原创 IOS成长之路-推送(通过苹果服务器)

关于推送的机制和推送用到的证书问题在这里不多说。关于推送的代码部分:客户端:1、告诉应用程序,接收push来的消息(当然是放在 didFinishLaunchingWithOptions 方法里面了)[application registerForRemoteNotificationTypes:UIRemoteNotificationTypeAlert|UIRemoteNotifi

2013-01-04 09:43:13 9694 2

原创 IOS成长之路-程序在后台运行(voip)

原理:在程序切入到后台后,每十分钟就去执行一个动作来唤醒程序,由此来保证它一直在后台运行。1、在Info.plist中添加UIBackgroundModes 键值让系统知道你的应用程序应该在适当的时候被唤醒2、在 - (void)applicationDidEnterBackground:(UIApplication *)application  切入后台执行的方法中执行下面代

2012-12-28 16:24:33 4251 4

原创 IOS成长之路-推送(本地推送)

1、打开本地推送并设置属性NSString *str = @"本地推送的信息"; UIApplication *app = [UIApplication sharedApplication]; UILocalNotification *notification = [[UILocalNotification alloc]init];//初始化本地推送 notificat

2012-12-28 15:40:04 2059 1

原创 IOS成长之路-code signing is required for product type 'Application' in SDK 'iOS 6.0'

解决之道:PROJECT --> Build Settings --> Code Signing --> Code Signing Identity设置为 iPhone DeveloperTARGETS --> Build Settings --> Code Signing --> Code Signing Identity设置为 iPhone Developer

2012-12-04 13:46:45 22798

原创 IOS成长之路-ASIHTTPRequest 断点续传

1.导入ASIHTTPRequest第三方类库下载地址:ASIHttpRequest类库         完整代码下载:下载2.在 .h 文件中#import #import "ASIHTTPRequest.h"#import "ASINetworkQueue.h"@interface DownLoadViewController : UIViewContro

2012-12-03 10:31:38 11490 6

原创 IOS成长之路-DES+Base64 加密、解密

DES是一种分组数据加密技术(先将数据分成固定长度的小数据块,之后进行加密),速度较快,适用于大量数据加密3DES是一种基于DES的加密算法,使用3个不同密匙对同一个分组数据块进行3次加密,如此以使得密文强度更高。相较于DES和3DES算法而言,AES算法有着更高的速度和资源使用效率,安全级别也较之更高了,被称为下一代加密标准。用DES实现加密和解密的过程:(注释是我自己理解添

2012-11-14 21:09:52 26095 6

原创 IOS成长之路-获取设备的信息

NSLog(@"globallyUniqueString=%@",[[NSProcessInfo processInfo] globallyUniqueString]);//全球唯一标识 NSLog(@"uniqueIdentifie=%@",[UIDevice currentDevice].uniqueIdentifier);//唯一的标识 可用于区分设备 NSLog(@"nam

2012-11-14 19:27:08 7727 3

原创 IOS成长之路-MD5加密算法

-(NSString *)md5:(NSString *)str { const char *cStr = [str UTF8String];//转换成utf-8 unsigned char result[16];//开辟一个16字节(128位:md5加密出来就是128位/bit)的空间(一个字节=8字位=8个二进制数) CC_MD5( cStr, strlen(cStr)

2012-11-12 20:49:08 12014 1

原创 IOS成长之路-正则表达式的简单使用

在 4.0 之后,系统就有了它自己的类(NSRegularExpression,NSRegularExpression)来使用正则表达式,,之前都是要添加第三方类库 RegexKitLite 来使用这两个类的简单使用:NSString *str = @"3sdfh*odsi"; //匹配第一个字符是数字 NSRegularExpression *regex1

2012-11-09 15:18:31 3260

原创 IOS成长之路-Undefined symbols for architecture armv7s:解决之道

Undefined symbols for architecture armv7s:  "_sqlite3_reset", referenced from:      _initializeStatement in Parse(PF_FBCacheIndex.o)只因缺少了某个类库文件,我们只需去把它添加进去即可。在这里"_sqlite3_reset"

2012-11-08 17:55:04 14851 1

原创 IOS成长之路-关于iOS6.0 屏幕旋转的问题

1、首先在appDelegate中,把view添加到window中有两种方式、 self.window.rootViewController = self.view; [self.window addSubview:self.view.view];但是如果用第二种的话,在ios6.0中再去设置屏幕旋转是没有任何效果的,必须使用第一种。在ios6.0以前的版本是没有这种

2012-11-06 14:37:55 3136 2

GCD+NSURLSession文件下载

此项目为一个示例项目,主要是实现GCD的多线程异步下载

2015-06-11

NSMutableURLRequest

基于NSMutableURLRequest发起的网络请求,在请求的同时加上加载框和提示框

2015-04-08

使用framework实现动态模块更新

利用framework实现类似于支付宝APP的动态模块添加更新的效果

2015-03-05

ios录制声音

实现录制声音、音量大小的图示、并播放录音。

2013-06-14

相机和相册

为项目添加相机和相册的功能,从而从中选取想要的图片。

2013-01-04

推送服务器端

实现ios推送的服务器端,通过java服务器端来和苹果推送服务器进行交流,从而实现推送效果

2013-01-04

ios推送php服务器端

用php实现ios推送效果的服务器端,简单快捷的实现推送

2012-12-28

ASIHTTPRequest断点续传

ASIHTTPRequest实现资源的下载,断点续传

2012-12-04

ASIHttpRequest类库

这是一个用于下载的第三方类库ASIHttpRequest

2012-12-03

Delegate实现传值

用Delegate来实现两个界面的传值(本demo是实现第二个界面向第一个界面传值)

2012-08-31

ios开发百度API包

这个包中包含了ios百度地图开发文档,demo和ios开发用到的类库文件

2012-08-27

空空如也

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

TA关注的人

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