自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

KT的iOS开发小站

记录点滴成长~

  • 博客(12)
  • 资源 (4)

原创 Xcode git版本控制忽略无关文件

git版本控制的时候,有很多非代码文件也会被跟踪,比较常见的如一些影藏文件DS_Store、以xcworkspace、xcuserstate、xcuserdata等结尾的状态文件等。为了不把这些文件加入版本控制体系中,我们需要进行以下三步设置,注意,每一步必不可少,也不可交换位置,下文会具体解释原因。 第一步:进入git的代码仓库,执行以下的代码git rm --cached *.xcuserst

2015-04-27 22:54:16 9684 5

原创 OS X动态库实现函数拦截功能

OS X系统中,仅有很少的进程只需要内核加载器就可以完成,几乎所有的程序都是动态连接的,通常采用/usr/lib/dyld作为动态链接器。 作为一个私有的加载器,dyld提供了一些独有的特性,如函数拦截等。DYLD_INTERPOSE宏定义允许一个库将其函数实现替换为另一个函数实现。以下代码取自dyld的源代码,演示了这个功能。#if !defined(_DYLD_INTERPOSING_H_)

2015-04-26 12:33:39 1895 1

原创 Xcode报错"The working copy 'xxx' has uncommitted changes"解决方案

有时候切换到其他的branch,即使未做任何修改,也会报出这个错误,因为真正的内容没有任何修改,因此推测可能是某些状态文件或者描述文件在捣鬼。 只需要进入项目文件夹目录下,分别执行以下两行代码即可。git rm --cached *.xcuserstate git rm --cached *.xcuserdata

2015-04-25 16:19:02 8483 1

原创 IOS策略模式与多态

策略模式是一种常见的软件设计模式,这里简单得介绍一下策略模式并用IOS简单实现一下。

2015-04-25 00:30:46 2756

原创 iOS从零开始学习socket编程——高并发多线程服务器

在上一篇文章《iOS从零开始学习socket编程——HTTP1.0服务器端》中我们已经简单的接触了OC搭建的HTTP服务器。 (地址http://blog.csdn.net/abc649395594/article/details/45131373) 出于用户体验和鲁棒性考虑,这里把这个HTTP服务器改进成多线程的。 首先,AnsycSocket这个类是基于OC的Runloop实现的,Runl

2015-04-20 18:47:59 3244

原创 OS X系统审计子系统详解

OS X是下了基本安全模块BSM。审计系统的作用是跟踪用户和进程的操作。类似于Windows系统里面的日志功能。 出于安全性考虑,审计系统必须在内核层次执行,在OS X中,审计是通过Mach实现的。 默认情况下,审计日志存放在/var/audit目录下。命名方式是start_time.stop_time。其中的start_time是起始时间戳,精度为秒。最后一个日志文件的stop_time是no

2015-04-19 23:56:10 1162

原创 iOS从零开始学习socket编程——HTTP1.0服务器端

在前一篇文章《iOS从零开始学习socket编程——HTTP1.0客户端》中已经简单的介绍过了Socket编程和一些基本原理。并且实现了简单的iOS客户端(原文地址:http://blog.csdn.net/abc649395594/article/details/45081567) 这里再简单介绍一下如何使用OC搭建socket的服务器端。虽然这并不是一个好的解决方案,通常我们使用Java或者P

2015-04-19 18:40:11 3216 2

原创 iOS从零开始学习socket编程——HTTP1.0客户端

在开始socket编程之前,首先需要明确几个概念: 1.网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。 2.socket中文名为“套接字”,是基于TCP/IP协议通信机制。 3.客户端的socket连接需要指定主机的ip地址和端口,ip地址类似于家庭地址,用于唯一确认一台主机,而端口类似于门牌号,用于唯一确认主机上的某一个程序。我们模拟一次HTTP的

2015-04-16 21:51:30 2291

原创 AsyncSocket didReadData函数详解

恐怕在AsyncSocket框架中,最关键的一个函数要数- (void)onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag;这个函数在socket输入流获取到数据时被调用,也可以自定义timeout和length。本文重点讨论这个基本函数使用中容易出现的问题。如果socket使用没有问题,基本上读取到数据

2015-04-14 19:44:59 4348

原创 IOS编程——Socket传输汉字

Socket编程里面,客户端使用CFReadStreamRef readStream; CFWriteStreamRef writeStream;获取输入输出流。设置好代理后,当有输入传入时,使用uint8_t buffer[1024]; length = (int)[self.inputStream read:buffer maxLength:sizeof(buffer)];把inputStrea

2015-04-09 21:43:48 1812

原创 UIView半透明悬浮效果

当在原有视图上需要弹出一个新的视图,并且突出显示时,我们可以新建一个和屏幕大小相同的UIView,并且将UIView的背景颜色设置为灰色,需要突出显示的控件背景设为白色(或其他醒目颜色)。同时,将UIView设置具有透明度,需要突出显示的控件不透明。这样一来就可以达到,半透明悬浮显示控件的酷炫效果。 实际写代码过程中会发现,如果直接修改UIView的alpha,效果并不理想。self.view.a

2015-04-06 10:54:01 7922 1

原创 MKNetworkKit自定义缓存有效时间

MKNetworkkit是一个非常好用、轻量的网络请求框架。可以支持自动缓存。 但是在某些情况下,我们要求数据可以实时被更新,比如下单之后,订单状态的刷新、商品状态的刷新等。 MKNetworkkit有一个用于控制缓存有效时间的变量,叫MKNetworkKitDefaultCacheDuration。这个变量在MKNetworkKit.h中被预定义// MKNetworkKit.h #defi

2015-04-03 12:34:56 982

Reveal 1.6.2破解版

iOSUI调试利器,最新版,完美破解,新版对autolayout支持的更好,支持显示ViewController,适配iOS9,支持多屏显示,运行创建屏幕快照并分享

2015-11-19

CoreData数据验证

通过一段具体的代码演示了CoreData如何验证输入数据是否满足要求

2015-06-22

Core Data数据验证

这一段代码具体实现了如何验证输入数据的合法性。

2015-06-22

Core Data多线程操作

通过一个工程,具体演示了如何在多线程环境下,实现简单的Core Data操作

2015-06-22

空空如也

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