自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (7)
  • 收藏
  • 关注

原创 多线程之NSOperation的进阶使用和探讨

本文将会从这多个方面探讨NSOperation类和NSOperationQueue类的相关内容一、简介NSOperation的是iOS2.0推出的,通过NSThread实现的,但是效率的确一般。从OS X10.6和iOS4推出GCD时,又重写了NSOperation和NSOperationQueue,NSOperation和NSOperationQueue分别对应GCD的任务和队列,所以...

2018-11-24 09:30:55 273 1

原创 知识点:可变数组的属性使用copy修饰的后果

问题:视频What’s New in LLVM 中,从12:05的时间开始有个关于NSMutableArray可变数组属性的使用问题。运行后报错图如下:分析:self.photos的实际类型是 __NSMutable0,也就NSArray类型。没有addObject的方法。进一步探讨:OC是门动态型语言,在编译阶段不会做类型检测。OC的内存管理是引用计数,在ARC环境下,属性...

2018-11-16 07:27:33 719

原创 多线程之NSThead的进阶使用和探讨

概述NSThread类是一个继承NSObjct类的个轻量级的类。但需要管理线程的生命周期、同步、加锁等问题,这会导致一定的性能开销。使用NSThread类可以让某个OC方法在特定的线程中被调用。当需要执行一个冗长的任务,并且不想让这个任务阻塞应用中的其他部分,尤其为了避免不阻塞app的主线程(因为主线程用于处理用户界面展示交互和事件相关的操作),这个时候非常适合使用多线程。线程也可以将一个庞...

2018-11-15 17:35:17 136

原创 iOS缓存策略之NSCache的简单使用

NSCache是一个继承NSObjec的可变集合,是苹果提供的一套缓存机制,用键值(key-value)对来临时存储只需要短暂存储在内存中的数据,并且当内存空间很少的时候会可以自动释放一些资源。概观缓存(cache)对象和其他可变集合不同的几个方面。NSCache类包含了各种自动销毁策略,来保证缓存内容没有占用过多的系统内存。如果其他应用需要内存,这些策略会从系统中移除一些选项内容,来减...

2018-11-15 00:19:09 196

原创 知识点:id 和NSObject *对比,以及id <NSObject>介绍

在obj.h的类文件中(想要知道源码具体有内容,可以通oc runtime源码 版本 objc4-723查看源码内容。),可以看出id类型和NSObject类型的信息。如下:类 id/// An opaque type(隐含类型) that represents an Objective-C class.typedef struct objc_class *Class;/// Repre...

2018-11-06 13:30:21 256

原创 iOS:The operation couldn’t be completed. (DVTCoreSimulatorAdditionsErrorDomain error 0.)

前言查看磁盘空间的时候,发现系统磁盘消耗太多空间。而且显示是系统消耗的。然后就大举的删除了很多关了XCode和模拟器本地资源。然后运行XCode。发现模拟器一直调不出来,并且XCode提示这个错误,如下The operation couldn’t be completed. (DVTCoreSimulatorAdditionsErrorDomain error 0.)解决方案:重新启...

2018-10-29 09:57:30 1365

原创 Swift4 异常处理Try_Catch的使用之初见

前言从OC转Swift了。虽然Swift的官方语法的资料看了2遍了。还是在使用的时候遇到点问题。好记性,不如烂笔头。本篇不是高深的内容。只是作为初使用的记录。当想给一个函数使用try-catch。需要在函数后加个throws。具体使用,如下先有个错误的枚举enum ErrorType:Error{ case ErrorTypeNil case ErrorType1}...

2018-10-26 10:48:53 818

原创 Swift代理协议的安全使用

文章Swift代理协议的安全使用概述在Swift下,使用代理协议,并且检验代理对象的存在和协议函数是否被实现。前言可空链式调用(Optional Chaining)是一种可以请求和调用属性、方法及下标的过程,它的可空性体现于请求或调用的目标当前可能为空(nil)。如果可空的目标有值,那么调用就会成功;如果选择的目标为空(nil),那么这种调用将返回空(nil)。多个连续的调用可以被链接...

2018-10-25 10:54:30 330

原创 开发环境下PP文件的创建

开发环境下Provisioning Profile文件的创建。当我们在做iOS开发的时候,总是添加很多证书,来保证安全性。Provisioning Profile我们又称PP文件。这个文件将证书、App Id和设备相关联。本章节就是教大家如何创建开发环境下的PP文件。通过该Certificates,Identifiers&amp;amp;amp;Profiles–&amp;amp;gt; Provisioning Pr...

2018-10-23 17:21:17 1024

原创 iOS开发实用软件之NWPusher

一个App获取到一个Push内容。必须是服务器拿着对应token和需要的消息内容发给苹果服务器,然后由苹果服务器推送给用户。作为前端开发人员,为了学习Push,去搭建一个服务器,还是很耗时的。想了解iOS推送系列之Push的工作原理,可以查看这篇博客。现在有个软件NWPusher可以模拟服务器发送Push。为我们研究Push提供了便利,我们一起来了解下。一、软件的安装...

2018-10-23 13:57:09 357

原创 开发环境Push证书的创建图文流程

当写Push的时候,必须有相应的证书。而证书的创建也是个知识点。今天以图文的形式写个相关的证书创建的流程。生成对应的APP ID 和证书一.添加App ID1.进入苹果开发中心的App Id选择 Cerfificates,Identifiers&amp;amp;amp;amp;amp;amp;amp;amp;Profiles --&amp;amp;amp;amp;amp;amp;amp;gt; Identifiers --&amp;amp;amp;amp;amp;amp;a

2018-10-22 14:11:18 131

原创 Swift中Class和Struct异同

Swift 中类和结构体有很多共同点。共同处在于:定义属性用于存储值定义方法用于提供功能定义下标操作使得可以通过下标语法来访问实例所包含的值定义构造器用于生成初始化值通过扩展以增加默认实现的功能实现协议以提供某种标准功能与结构体相比,类还有如下的附加功能:继承允许一个类继承另一个类的特征类型转换允许在运行时检查和解释一个类实例的类型析构器允许一个类实例释放任何其所被分配...

2018-10-17 17:39:32 611

原创 iOS推送系列之Push的工作原理

要理解Push的工作原理,我们必须要知道几个知识点。设备是如何和APNs保持连接的。APNs如何识别需要推送的设备。  APNs可以推送给设备Push消息,是因为设备(iPhone、iPad)和APNs有一个长连接的通道。  iOS的Push通道是一个独立的长连接通道,并且是唯一的一个通道,由iOS系统独立维护。也就是说每一个手机系统,每次开机后,手机后台就会发出...

2018-10-17 14:20:23 336

原创 导入一个一个第三方库import 报错头文件不存在

如使用Masonry并在项目的编译设置中的header search paths 选项中增加$(SRCROOT)/Masonry然后在的项目预编译文件中增加#import "Masonry.h"然后就可以使用masonry的语句来设置界面了

2016-06-18 07:07:20 909

XCode 12.3 真机调试 Developer DiskImage

DeviceSupport xcode 打开Finder 按下: command⌘+shift⇧+g 输入: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 把文件解压到这个文件夹下,重新启动Xcode

2019-06-03

iOS 12.1 (16B5084a) Xcode10.1_beta ios12.1 developer disk image(ios12.0.1)

手机升级iOS12.0.1后,Xcode运行程序到真机报错,提示Could not find developer disk image,Xcode Device栏处的真机右侧显示“(unavailable)”,手机系统版本iOS是12.0.1,Xcode 9.4 .从Xcode10.1 beta中抽取的文件添加到Xcode 9.4上

2018-10-30

Xcode 10 中得到iOS 12.0 (16A5308d) 真机 Developer DiskImage镜像文件

iOS 12.0 (16A5308d) 真机 Developer DiskImage镜像文件

2018-09-28

iOS11.4 developer disk image

升级iOS11.4 后,Xcode9.2运行程序到真机报错,提示Could not find developer disk image,Xcode Device栏处的真机右侧显示“(unavailable)”,手机系统版本iOS是11.4,Xcode 9.2从Xcode 10 beta中抽取的文件添加到Xcode 9.2

2018-07-05

iOS 12.0 (16A5308d) 真机 Developer DiskImage镜像文件

解决 xcode9 不支持iOS12 在 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ 添加去内容就行

2018-07-05

Xcode8 ios10 developer disk image(ios10.0.2)

升级iOS10.0.2后,Xcode运行程序到真机报错,提示Could not find developer disk image,Xcode Device栏处的真机右侧显示“(unavailable)”,手机系统版本iOS是10.0.2,Xcode7.3.从Xcode8中抽取的文件添加到Xcode7.3上

2016-10-29

NSNotificationCnter的demo

三个功能,一个是基础的使用,一个是计算键盘的高度,一个在一个界面有两个button用于对其他页面背景颜色的修改

2015-12-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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