dispatch_sync和dispatch_async的区别
dispatch_sync 线程同步、dispatch_async线程异步
同步
dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSLog...[2019/1/10]
快速定位iOS线上BUG在哪个控制器崩溃
快速定位iOS线上App崩溃在哪个控制器里面,需要和后台配合使用
下载本项目并添加手动添加到项目里
新建所有的页面都继承于YZViewController
在AppDelegate的didFinishLaunchingWithOptions方法里面写下如下代码:
if ([[...[2019/1/9]
iOS 友盟错误分析-2019
友盟的错误分析越来越人性化了
前提集成了友盟统计,并打包的时候保留了.dSYM文件
先看看效果
可以看到bug显而易见的被发现了!那个文件夹,那一行代码
那么怎么才能这样呢
首先加入符号表,就是.dSYM文件,对应版本的哦!
有人会问.dSYM文件xcode怎么...[2019/1/7]
Hasse神舟笔记本卡logo解决,刷BIOS方法,教你修复神船
我的电脑是神舟战神K660E i7 d7的,前两天装Windows10,Ubuntu,MAC OS Mojave,PE 一堆操作,使用bootice重建uefi引导,结果在前几天,我删了一个重复的uefi引导,重建了ESP分区,结果重启后就卡在LOGO界面。之前也出现过同样卡logo的两次情况...[2019/1/7]
iOS Class结构分析
objc_cla 结构体
类在OC中是objc_cla 的结构体指针
typedef struct objc_cla *Cla ;
在objc/runtime.h中objc_cla 结构体的定义如下:
struct objc_cla {
...[2019/1/4]
(转)iOS学习——UIlabel设置行间距和字间距
在iOS开发中经常会用到UIlabel来展示一些文字性的内容,但是默认的文字排版会觉得有些挤,为了更美观也更易于阅读我们可以通过某些方法将UIlabel的行间距和字间距按照需要调节。
比如一个Label的默认间距效果是这样:
然后用一个封装起来的Category来调整这部分文...[2019/1/4]
iOS 枚举的巧用
1.使用层面的理解
在这里首先讲如何简单的使用, 仅仅是使用层面(有理解错误的地方帮忙纠正), 然后我们在去理解位运算符! 在下面的图中我们可以看见枚举值中有<<(位运算符:左移):
如果我们在枚举值中看见<<那...[2019/1/2]
iOS 内存管理之属性关键字
你好2019!一起努力呀!
主要分三种类型:
1、原子操作相关: nonatomic、atomic
nonatomic:非原子操作,对属性赋值的时候不加锁,多线程并发访问会提高访问效率
atomic:原子操作,提供多线程安全,只在其相关的setter或getter方法的时候...[2019/1/2]
class和object_getClass方法区别
一、概述
如上图:
1.内存创建一个instance实例对象(Person *per),同时会创建一个与之对应的类对象(Cla perCla )和元类对象(Cla perMeta);
注:实例对象通过calloc可创建多个,但类对象和元类对象在内存中只有一份,...[2018/12/29]
Atomic原子操作原理剖析
前言
绝大部分 Objective-C 程序员使用属性时,都不太关注一个特殊的修饰前缀,一般都无脑的使用其非默认缺省的状态,他就是 atomic。
@interface PropertyCla
@property (atomic, strong) NSObject *atomicObj...[2018/12/29]
axios携带cookie配置详解(axios+koa)axios携带cookie配置详解(axios+koa)
话不多说,一个字,干!
前端配置如下:
axios.defaults.withCredentials = true; 配置为true
axios.post(''http: localhost:3000/tpzdz/vote/all'', {
openid...[2018/12/29]
iOS 关于监听手机截图,UIView生成UIImage, UIImage裁剪与压缩的总结
一. 关于监听手机截图
1. 背景: 发现商品的售价页总是被人转发截图,为了方便用户添加截图分享的小功能
首先要注册用户截屏操作的通知
- (void)viewDidLoad {
[super viewDidLoad];
注册用户的截屏操作通知
[[N...[2018/12/27]
cocoaPods安装爬坑总结
1、移除现有Ruby默认源
$ gem sources --remove https: rubygems.org/
2、使用新的源
$ gem sources -a https: ruby.taobao.org/
备注:现在貌似淘宝也不更新了,可以...[2018/12/25]
蓝牙收发数据长度的问题
最近公司固件工程师在调试时发现一个问题,蓝牙设备和安卓APP可以正常通讯,但是和iOS APP总是传输数据超时,之后断开连接,应该是程序问题,之前遇到过一次,但是只有那一次,想偷下懒所以就没改,这次又出现了就不得不改了。用xcode运行项目,打开log,在
- (void)peripheral...[2018/12/25]
真win10官方原版ISO下载方法 - Mr-Lee
最近装新机器,计划装个双系统,但是新硬件用不了Win7,只好改装Win10。经过数遍尝试,发现网上很多打着官方原版旗号的ISO以及各种装机软件,或多或少都捆绑了一些“流氓”软件,这篇文章将讲述获取真·官方原版ISO的方法。
微软官方下载网页:https: www.microsoft.com/zh...[2018/12/25]
iOS----------Apple id如何关闭双重认证?
https: www.zhihu.com/question/292819209[2018/12/24]
iOS UIApplication sharedapplication用法
iOS url出现特殊字符处理 -- stringByAddingPercentEncodingWithAllowedCharacters
stringByAddingPercentEscapesUsingEncoding(只对 `#%^{}[]|\"<> 加空格共14个字符编码,不包括”&?”等符号), ios9将淘汰,建议用 stringByAddingPercentEncodingWit...[2018/12/14]
ios开发网络篇—Get请求和Post请求 - 转
简单说明:建议提交用户的隐私数据一定要使用Post请求 相对Post请求而言,Get请求的所有参数都直接暴露在URL中,请求的URL一般会记录在服务器的访问日志中,而服务器的访问日志是黑客攻击的重点对象之一 用户的隐私数据如登录密码,银行帐号等
示例代码
#defi...[2018/12/14]
iOS开发网络篇—发送GET和POST请求(使用NSURLSession) - 转
说明:
1.该文主要介绍如何使用NSURLSe ion来发送GET请求和POST请求
2.本文将不再讲解NSURLConnection的使用,如有需要了解NSURLConnection如何发送请求。
详细信息,请参考:http: www.cnblogs.com/wend...[2018/12/14]
仿微信选取图片发表朋友圈功能
一、思路
第一,图片拖拽位置互换/删除,参照第三方;
第二,图片用scrollview浏览,缩放用zoomToRect,不用CGAffineTransformScale;
其次,还要返回当前缩放图片
放回当前缩放图片
- (UIView *)viewForZoomingInS...[2018/12/14]
ios应用数据存储方式(XML属性列表-plist) - 转
一.ios应用常用的数据存储方式 1.plist(XML属性列表归档) 2.偏好设置 3.NSKeydeArchiver归档(存储自定义对象) 4.SQLite3(数据库,关系型数据库,不能直接存储对象,要编写一些数据库的语...[2018/12/13]
【读书笔记】iOS-使用GCD改善性能
一,队列简介。
有些与并行处理相关的术语令人迷惑。线程是一个常用的术语,在iOS应用中,线程是标准的POSIX线程。从技术上说,线程不过是一组指令,可在进程中独立地处理;在同一个进程中,可以有多个线程,它们共享内存和资源。由于线程是独立的,可将工作划分给多个线程,以提供工作的完成速度。在多个线程...[2018/12/13]
scrollView浏览图片并缩放
一、应用场景
类似微信发朋友圈添加图片(相册或拍照),点击图片可以浏览,浏览时可对当前图片进行缩放,并且该缩放不影响其他图片正常显示;浏览时可删除图片
二、关键代码
这里主要的问题是:如果采用CGAffineTransformScale对scrollview进行缩放,则浏览时移到下一张图片也...[2018/12/13]
AFNetworking源码浅析
本文将从最简单的GET请求方法的使用入手,由表及里,逐步探究AFNetworking如何封装处理原生的网络请求。
一、AFNetworking的简单使用
-(void)getDemo{
AFHTTPSe ionManager *manager =[AFHTTPSe ionMan...[2018/12/13]
iOS UITextField的代理<UITextFieldDelegate>的几点笔记
今天做项目的时候,有个需求,点击按钮,就在特定的编辑框输入按钮中的文字,一开始我还以C++的思想来写,先获取光标的位置,然后在判断是否在那个编辑框,进行输入。后来我旁边的同事看到了直接教我用代理方法,因为接触iOS没多久,也不清楚<UITextFieldDelegate>的...[2018/12/13]
【读书笔记】iOS-库【读书笔记】iOS-库
一,OS X和iOS自带一些标准的C程序库和操作系统相关的特殊性。在MAC和iOS的世界里,静态库采用.a扩展名(静态对象代码库存档),动态加载库采用.dylib扩展名。如果开发人员来自于Linux世界,可能习惯于.so文件;如果开发人员过去是Windows的开发人员,可能把它们称作DLL。
...[2018/12/12]
【读书笔记】iOS-更改编辑器键的绑定
一,Xcode-->Preferences--->Key Bindings.
参考资料:《Xcode实战开发》[2018/12/12]
「iOS」你会用几种方法实现计时器「iOS」你会用几种方法实现计时器
1.NSTimer
存在一定的误差,不管是一次性的还是周期性的timer得实际触发事件的时间,都会与所加入的runloop和runloopMode有关,如果此runloop正在执行一个连续性的运算,timer就会被延时触发。
创建方式1
NSTimer *timer1 = [N...[2018/12/12]
GoodUserInterface 模仿页面功能
模仿一些好的应用中的好的界面或功能。 平时使用的APP有很多,其中一些都是常见的功能的拼凑,在业务层面比较复杂,而具体的页面实现都很类似。 在这种情况下,我们还会发现有一些APP的页面效果的实现方式比较独特,另辟蹊径,打破常规,通过独特的方式来设计实现页面功能。 这样的功能很容易引人注意,使用的时...[2018/12/11]
OpenGL ES画板
一、概述
利用自定义顶点和片元着色器渲染,并且设置图片纹理颜色为画笔颜色
二、核心代码
- (void)renderLineFromPoint:(CGPoint)start toPoint:(CGPoint)end
{
顶点缓存区
static...[2018/12/11]
iOS 单例模式简单实例
单例模式主要实现唯一实例,存活于整个程序范围内,一般存储用户信息经常用到单例,比如用户密码,密码在登录界面用一次,在修改密码界面用一次,而使用单例,就能保证密码唯一实例。如果不用单例模式,init 两个的实例的堆栈地址不一样,所以存放的数据的位置也不一样,当其中一个数据改变,另一个数据...[2018/12/11]
【读书笔记】iOS-更新项目前要注意的事情
在进行永久更改项目的任何现代化操作之前,要问自己几个问题。
1,我还需要返回项目的旧代码吗?
2,我的同事中有没有人无法升级到最新版本的Xcode?
3, 如果我使用了最新的功能,会不会减少用户?
如果上述问题是有答案为“是”的,就应该更谨慎地考虑现代化项目的决策。但是,这并...[2018/12/10]
iOS-关于缓存【SDImageCache】Image,一直刷新UIImageView内存一直增加问题
最近做的一个项目,里面有这样一个需求,在一个页面,用一个UIImageView不停的刷新显示图片,图片可能会重复显示;图片是从服务器下载下来的data流,data转UIimage系统的方法:
UIImage *image = [UIImage imageWithData:data];
这个...[2018/12/7]
如果你的公司还没有企业级班车应用,把这篇文章转给你老板
本文由云+社区发表
越来越多的大型企业都开始为员工提供班车,解决员工上下班出行的问题,甚至有些高新技术园区也组织了园区车辆共享的一些新的出行方案。期间,企业从早期员工提供优质的班车服务,到提升班车的管理水平、优化车辆使用成本逐渐成为了主线。那么如何做到这些呢?企业级班车应用到底怎么做呢?首先...[2018/12/7]