前后台切换会导致 dispatch_source_t 变成suspend状态?
iOS中如何正确释放GCD定时器(dispatch_source_t)iOS中如何正确释放GCD定时器(dispatch_source_t) 一.现象 通过云迹的崩溃,查询到崩溃在福袋的释放缓存的方法(clearLuckyBagInfo)中,然...
前后台切换会导致 dispatch_source_t 变成suspend状态?
iOS中如何正确释放GCD定时器(dispatch_source_t)iOS中如何正确释放GCD定时器(dispatch_source_t) 一.现象 通过云迹的崩溃,查询到崩溃在福袋的释放缓存的方法(clearLuckyBagInfo)中,然...
为什么我就不知道这些约定怎么查...
NS_ASSUME_NONNULL_BEGIN和NS_ASSUME_NONNULL_END在swift中,可以使用!和?来表示一个对象是optional的还是non-optional,如view?和view!。而在Objective-C中则没有这一区分,view即...
在swift中,可以使用!和?来表示一个对象是optional的还是non-optional,如view?和view!。而在Objective-C中则没有这一区分,view即...
find . -type f | grep -e ".framework" | xargs grep -s UIPasteboard
1.属性传值循环引用 cell 添加到tableView上被tanleView强引用,cell中tableView被强引用,造成循环引用; 所以cell中tableView应...
1. block的本质和原理 block的本质实际上是OC对象,内部也存在着isa指针; block 可作为代码块、函数的参数、返回值也可以代替代理; block内部封装了函...
1.到底什么才是RunLoop,简述RunLoop实际上就是个do-while运行循环,其本质保证程序运行不退出从而监听APP滑动、点击、timer等事件。循环内部没有事情的...
1.创建子线程并开启线程2.给当前runloop添加port并运行runloop3.将新任务添加到已休眠的线程
一、 获取方法列表----class_copyMethodListmethod_getName、sel_getName 二、 获取属性列表 class_copyIvarLis...
一、颜色适配 iOS13 之前 UIColor只能表示一种颜色,而从 iOS13 开始UIColor是一个动态的颜色,在Light Mode和Dark Mode可以分别设置不...
混淆之后 SDK方法找不到 求解
Hikari代码混淆2020.01.14 此方法早已无法使用,原作者也不再更新 下载pkg安装文件:https://github.com/HikariObfuscator/Hikari/rele...
您好楼主,想请教一下 在SDK开发过程中,api接口的回调是选择使用代理 还是block 为好呢?
iOS SDK开发经验分享入职以来一直负责SDK的开发工作。从第一个版本一直到现在,期间遇到了不少问题,踩过不少坑,也对接过不少集团内部SDK,对SDK开发也算有点微薄经验。本篇文章没啥干货,都是我在...
哪里可以下载demo
简单实现UILabel之协议类点击事件运用NSMutableAttributedString实现UILanel协议类点击事件 YJLAttributesLabel 方法 YJLAttributesLabel.h ...
运用NSMutableAttributedString实现UILanel协议类点击事件 YJLAttributesLabel 方法 YJLAttributesLabel.h ...
老铁,你这篇文章太牛逼了,解决了太多问题,感谢!!!!
iOS获取设备各种硬件信息1.NSLog(@"%@",[[UIDevice currentDevice] systemVersion]);//系统版本 2.获取手机型号 需要头文件 #import -...