<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[d1w2hj的博客]]></title><description><![CDATA[Journey to the palace of iOS-IT-Life...]]></description><link>https://blog.youkuaiyun.com/d1w2hj</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; d1w2hj]]></copyright><item><title><![CDATA[HMACSHA1对NSData加密]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/62038120</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/62038120</guid><author>d1w2hj</author><pubDate>Tue, 14 Mar 2017 10:34:44 +0800</pubDate><description><![CDATA[由于项目中需求跟无线AP通讯，通讯协议中有一部分data 需要进行HMACSHA1加密，在Github和stackoverflow上找了一些方法发现使用中都出错了，很多都是对NSString类型消息加密，而我需要对一定格式的data加密，我做了一些改变。代码如下：#import <Foundation/Foundation.h>
@interface HJHMACSHA1 : NSObject
+]]></description><category></category></item><item><title><![CDATA[使用AFNetworking 3 内存泄露]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/51793065</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/51793065</guid><author>d1w2hj</author><pubDate>Thu, 30 Jun 2016 20:09:52 +0800</pubDate><description><![CDATA[在使用instruments做内存泄漏分析时，发现所有使用如下语句的地方都有内存泄漏，OMG:    if (!_manager) {
        _manager = [AFHTTPSessionManager manager];
    }stack overflow上查了下并没有找到好的解决方案，去github的AFN的issue区查了下，确实有几个人提问了，但是每人给出解决方案。]]></description><category></category></item><item><title><![CDATA[AFNetworking3同步请求另类解决方案（阻塞线程）]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/51099493</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/51099493</guid><author>d1w2hj</author><pubDate>Fri, 08 Apr 2016 20:46:49 +0800</pubDate><description><![CDATA[1.情景:由于公司业务需求，需要在iPad端架设服务器，当用户手机扫码连接wifi时，公司后台会重定向到我iPad端的服务器，并通过Socket将必要的用户信息发给iPad端，iPad验证用户信息，然后发送xml请求给AC（我们公司用的Aruba），请求通过则再由iPad重定向给用户一个成功页面，否则失败页面。 真的是折腾了好久。废话不多说，进入正题。2.使用AFN 3.0做同步请求的原因：由于连接]]></description><category></category></item><item><title><![CDATA[xcode 7.1免费真机调试]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/49076123</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/49076123</guid><author>d1w2hj</author><pubDate>Mon, 12 Oct 2015 16:44:29 +0800</pubDate><description><![CDATA[1.连上手机
2.Fix Issue
3.process launch failed
4.继续解决问题
5.运行app]]></description><category></category></item><item><title><![CDATA[Swift学习笔记基础语法-字符串与字符]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48766483</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48766483</guid><author>d1w2hj</author><pubDate>Sun, 27 Sep 2015 13:21:30 +0800</pubDate><description><![CDATA[1.初始化空字符串      
2.字符串的可变性
3.字符串的值类型
4.字符的使用
5.字符串的使用]]></description><category></category></item><item><title><![CDATA[Swift学习笔记基础语法-基本运算符]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48765133</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48765133</guid><author>d1w2hj</author><pubDate>Sun, 27 Sep 2015 09:34:13 +0800</pubDate><description><![CDATA[1.赋值运算符
2.算数运算符
3.取余运算符
4.三目运算符
5.区间运算符]]></description><category></category></item><item><title><![CDATA[Swift学习笔记基础语法-整数类型]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48765063</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48765063</guid><author>d1w2hj</author><pubDate>Sun, 27 Sep 2015 09:23:15 +0800</pubDate><description><![CDATA[1.整数范围        
2.浮点数
3.布尔值Bool
4.元组
5.nil    
6.可选类型与拆包
7.错误处理
8.断言(Assertion)调试]]></description><category></category></item><item><title><![CDATA[iOS多媒体]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48659845</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48659845</guid><author>d1w2hj</author><pubDate>Tue, 22 Sep 2015 19:49:53 +0800</pubDate><description><![CDATA[音频

    音效
    音乐
    音频会话
    录音
    音频队列服务

视频

    MPMoviePlayerController
    MPMoviePlayerViewController
    AVPlayer

摄像头

    UIImagePickerController拍照和视频录制
    AVFoundation拍照和录制视频

总结
目 录]]></description><category></category></item><item><title><![CDATA[iOS 手势识别与操作 UIGestureRecognizer]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48637537</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48637537</guid><author>d1w2hj</author><pubDate>Mon, 21 Sep 2015 23:16:54 +0800</pubDate><description><![CDATA[1.UIGestureRecognizer
2.注意事项
3.TapGesture
4.PinchGesture
5.RotationGesture 仿iPhone相册图片捏合旋转
6.SwipeGesture
7.PanGesture
8.LongPressGesture
9.手势的依赖]]></description><category></category></item><item><title><![CDATA[Swift学习笔记基础语法-常量与变量]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48602001</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48602001</guid><author>d1w2hj</author><pubDate>Sun, 20 Sep 2015 20:52:55 +0800</pubDate><description><![CDATA[常量与变量        
整数与浮点数
Bool类型
元组tuple
nil
可选类型之强制解析（强制拆包）
可选绑定
隐式解析（间接拆包）
错误处理
断言(]]></description><category></category></item><item><title><![CDATA[常用结构体之NSRange用法]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48597603</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48597603</guid><author>d1w2hj</author><pubDate>Sun, 20 Sep 2015 15:58:02 +0800</pubDate><description><![CDATA[定义NSRange在官方文档中如是定义：A structure used to describe a portion of a series—such as characters in a string or objects in an NSArray object. 
用法：]]></description><category></category></item><item><title><![CDATA[iOS UITableViewCell 多线程 网络+沙盒的图片加载以及第三方框架SDWebImage方式加载]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48529287</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48529287</guid><author>d1w2hj</author><pubDate>Thu, 17 Sep 2015 21:17:59 +0800</pubDate><description><![CDATA[1.多线程网络沙盒 方式加载UITableViewCell中的图片
    1.首先，在apps.plist存放待加载图片的属性信息，如： 
    2.新建类 App作为数据模型,用来将之前的apps.plist转换成该模型 
    ...
2.SDWebImage实现]]></description><category></category></item><item><title><![CDATA[GCD的同异步、串并行以及队列死锁的问题]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48504155</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48504155</guid><author>d1w2hj</author><pubDate>Wed, 16 Sep 2015 22:53:18 +0800</pubDate><description><![CDATA[概念解释：同步和异步决定了要不要开启新的线程 
同步：在当前线程中执行任务，不具备开启新线程的能力 
异步：在新的线程中执行任务，具备开启新线程的能力并发和串行决定了任务的执行方式 
并发：多个任务并发（同时）执行 
串行：一个任务执行完毕后，再执行下一个任务通过GCD可获得的三种队列 
1.全局并发队列 
2.主队列（跟主线程相关联的队列） 
3.自定义队列三种队列通过同步、异步方式，共有6种方式]]></description><category></category></item><item><title><![CDATA[iOS KVC详解]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48251711</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48251711</guid><author>d1w2hj</author><pubDate>Sun, 06 Sep 2015 21:52:11 +0800</pubDate><description><![CDATA[What is KVCKVC 即 key-value coding,是一种间接访问对象属性的机制。这种机制是使用strings 来识别属性，而不是通过调用访问器方法或者是直接访问实例变量。很多时候在应用中使用KVC，可以简化编程。KVC FundamentalKeys 和 Key Paths的区别Key是一个识别对象属性的字符串，一般与接收者对象的访问器方法名和实例变量名一致。Key必须实用 ASC]]></description><category></category></item><item><title><![CDATA[iOS Runtime 初体验]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/48012017</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/48012017</guid><author>d1w2hj</author><pubDate>Wed, 26 Aug 2015 22:07:36 +0800</pubDate><description><![CDATA[初学iOS，虽然只是有了简单的认识，但是也确实令我激动了一下。之前想要访问一个类的私有方法，可以通过分类和KVC实现，但是比较有局限性。现在运用所学的一点runtime知识，再次访问私有方法和变量，并且能过通过runtime对它们进行赋值，甚至更改方法。 
首先，需要具备的一点基本知识有： 
What is runtime? 
runtime是一套比较底层的纯C语言API, 属于1个C语言库,OC程]]></description><category></category></item><item><title><![CDATA[iOS 分类的基本使用（更改frame）以及全局变量.pch的使用]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/47986723</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/47986723</guid><author>d1w2hj</author><pubDate>Tue, 25 Aug 2015 23:01:18 +0800</pubDate><description><![CDATA[iOS分类基础以及基本应用Objective-C提供了一个非常灵活的类(Class)扩展机制－类别(Category)。 
类别用于对一个已经存在的类添加方法(Methods)。你只需要知道这个类的公开接口， 
不需要知道类的源代码。需要注意的是，类别不能为已存在的类添加实例变量(Instance Variables)。注意几点： 
1.现有类的类名位于 @interface之后 
2.括号中是类别]]></description><category></category></item><item><title><![CDATA[iOS storyboard中四种好用的界面切换]]></title><link>https://blog.youkuaiyun.com/d1w2hj/article/details/47791325</link><guid>https://blog.youkuaiyun.com/d1w2hj/article/details/47791325</guid><author>d1w2hj</author><pubDate>Wed, 19 Aug 2015 23:26:03 +0800</pubDate><description><![CDATA[方法一： 
UIStoryborad中有个 初始化并返回一个指定制图控制器的方法：instantiateViewControllerWithIdentifier,使用identifier来指定，,在storyboard 的Identity这里，例如设置为sid2，然后再将根视图控制器强行换掉，换成从当前storyboard中指定的视图控制器： 
self.view.window.rootViewCo]]></description><category></category></item></channel></rss>