- 博客(19)
- 资源 (5)
- 收藏
- 关注
原创 fishhook-带你看fishhook源码,如何hook系统自带的C函数
这两天在看戴铭老师的即刻时间的课程,看了一下obj_msgSend的hook,针对于自己看fishhook的一些收货和感悟,和大家分享下,链接在下面。https://www.jianshu.com/p/fa31e76549de...
2020-01-20 09:18:03 630
原创 iOS 属性修饰符atomic并不是绝对安全的
atomic原子性,是否是绝对线程安全的,不是绝对线程安全怎么理解?首先看一下代码以及打印结果@property (atomic, assign) NSInteger intA; //有一个atomic的属性,表示是原子的- (void)viewDidLoad { [super viewDidLoad]; //开启一个线程对intA的值+1 dispatc...
2018-09-12 09:10:27 2161
原创 AFNetWorking改为同步请求
之前使用AFN etWorking这个库来做网络请求,一直都是做的异步的,突然有需求需要改成同步的,当时从网上找了一些方法,说使用信号量来做,但是尝试了一些,都不对,最后由于时间关系,同步请求改为了系统的同步请求来实现了需求。后面仔细的去查了一下,原来信号量使用的不对,特此记录一下。 1:先看看系统自带的同步请求是如何发送的NSMutableURLRequest *requ...
2018-08-21 20:49:25 4507 1
原创 method swizzling 笔记(一):未实现方法的方法
最近在研究method swizzing,读到了这一偏文章,原文链接,这篇链接已经说得很清楚了,网上80%的关于对viewWillAppear这个方法的交换的搜索结果,都是在viewWillAppear已经存在的情况下进行的。但是如果想要交换的是一个未实现的方法又是怎么样的呢,链接里面文章说的很清楚,在这里记录一下。 先介绍一下会使用到的几个函数,对这些函数了解的可以直接跳过 ...
2018-06-21 22:02:15 505
原创 iOS多线程--gcd篇
这几天在看iOS-gcd相关的书籍,做一个简单的总结 1): 队列 分为串行队列和并行队列: dispatch_queue_create("serialQueue",nil),这个方法总共有两个参数,第一个参数是这个队列的名称,第二个参数有两个值可以选择,分别是"DISPATCH_QUEUE_SERIAL","DISPATCH_QUEUE_CONCURRENT",前面一个表...
2018-03-24 18:11:54 369
原创 SDWebImage源码分析(二)
继续上一篇没有完成的,上一篇的地址。 上一篇说到了从缓存和本地都没有读取到图片的话就从网络中获取图片这一部分,关于上一篇留下的问题"为什么在SDWebImageDownloaderOperation的start方法的start方法最后启用了runloop"的问题,我初步的理解了一下:每一个线程对应着一个运行时,主线程默认有一个运行时,子线程需要手动启动一个runloop,否则子线程需要延...
2018-03-20 21:46:05 225
原创 SDWebImage源码分析(-)
本篇文章主要记录自己阅读SDWebImage时,对SDWebImage的理解,如果有不正确的地方,欢迎指正 SDWebImageView获取图片的主要思路是:开始从缓存NSCache里面取,取到了就返回;如果没有取到就从本地磁盘上取,取到了就设置缓存然后返回;如果没有取到就从url路径里面下载。 本文从文件"SDWebImageView+WebCashe.h"说起,这个文件主要是设置...
2018-03-19 22:23:39 756
原创 UITableView的相邻cell交换简单动画
实现了上下两个cell交换的简单动效,界面如下,点击上,和上面一个cell交换位置,点击下,和下面一个交换位置,点击删除,就删除当前的cell,完整代码,简单说明一下主要cell交换的代码。UITableViewCell *cell = [_tableView cellForRowAtIndexPath:indexPath];NSIndexPath *nextIndexPath = ...
2018-09-11 09:48:30 3088
原创 OC的消息转发机制
以下是个人对OC里面消息转发流程的理解,如有不正确的地方,欢迎指正。 正常情况下,调用一个对象里面已经存在的方法,能够调用成功,如下@implementation MsgSendViewController- (void)viewDidLoad { [super viewDidLoad]; /** OC里面调用一个方法的过程...
2018-07-24 23:43:45 777
原创 Block知识点总结(一)
Block相关的知识点始终都弄的不是很明白,这段时间仔细看了一下,记录一下. 头文件里面block常用的写法 实现文件里面block的写法 ...
2018-07-24 22:55:40 366
原创 KVO原理以及自定义KVO
系统的KVO的用法和现象 有一个KVOModel类,只要一个名字为name的属性,现在要监听name属性的变化,先调用系统的KVO方法来运行,如下 KVOModel *model = [KVOModel new]; model.name = @"1"; NSLog(@"---%@---",object_getClass(model)); /**...
2018-07-24 22:53:15 373
原创 iOS多线程-gcd篇(一)-对group的补充
上一篇文章记录了gcd的基本知识,上文链接,由于是查看资料,所以比较浅。最近遇到了一个情景:异步的上传多张图片,待所有的图片上传完成最后,才执行一个保存的操作。最开始写的错误代码如下,上传的地方就使用一个异步的线程来代替好了。 看如下代码,通过循环创建了三个异步的任务,分别延时三秒打印当前的下标,我们需要的结果是打印下标完成之后,最后打印group finish,但是打印结果如下:可...
2018-06-21 22:25:41 338
原创 iOS 打开天猫/淘宝/京东客户端并且进入商品详情页/店铺主页的方法
今天公司的需求说需要在app里面打开手淘/天猫/京东的商品详情页或者是店铺的主页,在网上搜了下,打开天猫和手淘有两种方法,一种是使用阿里百川的SDK完成,这个我还没有去尝试,我总结一下另一种可以打开的方法。我是使用的tablView布局,数据源是dataArray,didSelectRow的点击事件是下面这样的,在手机上安装了对应的app的时候,就可以直接打开到对应的页面,上面shop_id...
2018-03-28 21:32:58 45142 2
原创 IM及时聊天-1
简单的记录一下,两份基本相同的代码,实现了从一个模拟器向另一个模拟器发送消息; 主要的逻辑是:A模拟器开启了1024端口,然后A向1025端口发送消息;B模拟器开启了1025端口,然后B模拟器向1024端口发送消息A模拟器: #import "GCDAsyncUdpSocket.h引入代理 GCDAsyncUdpSocketDelegate@property (
2018-02-02 17:48:59 190
原创 swift-1-tableview
之前使用OC,开始学习swift,语法是有点不习惯,tableview的简单用法,记录下class FirstTableViewController: UIViewController { private var tableView :UITableView! private var dataArray : [String]! privat
2018-01-31 09:09:03 282
原创 swift
let str = "syx"print("Hello, World!",str)print("Hello, World! "+str)print("1","2","3", separator:"+", terminator: "4")print("syx");//let a = 1+2;//print(a);////for x in 0...1
2018-01-30 09:58:57 257
原创 白帽子讲web安全(1)
一个中年大叔开始学习web安全。之前是做web开发的,对于html知识有一点基础,想了解一下web安全方面的知识,于是买了一本白帽子讲web安全的书籍,今天看了一点,也对着书本上说的东西敲了一下代码。读到通过XSS获取本地ip的时候,说将java代码嵌入到页面中,这个嵌入到页面中是如何操作的,我没有弄明白。之前在对着书上的例子,在浏览器的控制台上写http请求获取邮件列表的时候,是直接在控制台
2017-12-03 15:24:56 722
原创 linux学习笔记(-)
前几天给电脑安装了ubuntu和windows的双系统,对于一个害怕动手的人来说,还是一个小小的成就。 由于之前是在公司,没 有有线,装了之后最主要的问题就是连不上无线 。今天周末在家里,连上有线之后,一直捣鼓怎么弄无线,各种命令ifconfig,iwconfig,然后各种no wireless extensions的打印结果,也没有wlan0的这样的打印,连上有线之后,mii-to
2017-12-02 16:55:05 184
android啊大大
2014-11-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人