自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

iOS_开发

最新iOS、iPhone资讯,万名iOS开发者、swift开发、果粉聚集,参与技术讨论,整理开发技巧,分享创业经验!享受生活、热爱编程!

  • 博客(44)
  • 收藏
  • 关注

原创 iOS 图文并茂的带你了解深拷贝与浅拷贝

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 一、概念与总结 1、浅拷贝 浅拷贝就是对内存地址的复制,让目标对象指针和源对象指向同一片内存空间,当内存销毁的时候,指向这片内存的几个指针需要重新定义才可以使用,要不然会成为野指针。 浅拷贝就是拷贝指向原来对象的指针,使原对象的引用计数+1,可以理解为创建了一个指向原对象的新指针而已,并

2017-07-31 19:01:00 208

原创 [iOS]终极横竖屏切换解决方案

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 大家的项目都是只支持竖屏的吧?大多数朋友(这其中当然也包括博主),都没有做过横屏开发,这次项目刚好有这个需求,因此把横竖屏相关的心得写成一遍文章供诸位参考。 01.综述 大多数公司的项目都只支持竖屏,只有一两个界面需要同时支持横屏,就像视频 APP 一样,只有视频播放的时候需要横屏,其他时候都只

2017-07-30 19:01:00 1005

原创 iOS实录:GCD使用小结(二)

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 导语:在GCD的使用中,需要考虑控制最大并发数 和 线程同步这两个问题,本文主要介绍GCD中如何控制最大并发数 。 一、概述 1、GCD并发的困扰 在GCD中有两种队列,分别是串行队列和并发队列。在串行队列中,同一时间只有一个任务在执行,不能充分利用多核 CPU 的资源,效率较低。 并发队

2017-07-29 19:01:00 517

原创 iOS实录:GCD使用小结(一)

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 导语:在iOS中,多线程方案有四种:pthread、NSThread、NSOperation & NSOperationQueue 和 GCD,但是开发中GCD使用得最多,本文主要总结一下我使用GCD的情况。 一、GCD(Grand Central Dispatch)概述 1、基本概念 GCD

2017-07-28 19:01:00 256

原创 深入剖析 iOS 性能优化

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 问题种类 时间复杂度 在集合里数据量小的情况下时间复杂度对于性能的影响看起来微乎其微。但如果某个开发的功能是一个公共功能,无法预料调用者传入数据的量时,这个复杂度的优化显得非常重要了。 上图列出了各种情况的时间复杂度,比如高效的排序算法一般都是 O(n log n)。接下来看看下图: 图中可以

2017-07-27 19:01:00 682

原创 浅谈iOS Crash(2)

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 浅谈 iOS Crash(一) 一、僵尸对象(Zombie Objects) 1、概述 僵尸对象:已经被释放掉的对象。一般来说,访问已经释放的对象或向它发消息会引起错误。因为指针指向的内存块认为你无权访问或它无法执行该消息,这时候内核会抛出一个异常( EXC ),表明你不能访问该存储区域(

2017-07-26 19:01:00 399

原创 代码处理 iOS 的横竖屏旋转

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 一、监听屏幕旋转方向 在处理iOS横竖屏时,经常会和UIDeviceOrientation、UIInterfaceOrientation和UIInterfaceOrientationMask这三个枚举类型打交道,它们从不同角度描述了屏幕旋转方向。 1、UIDeviceOrientation:设备方向

2017-07-24 19:01:00 441

原创 MJExtension框架源码分析

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! iOS开发中经常会用到数据和模型的互相转换,大致有两种转换方式:1.手动写转换的代码,2.利用开源库进行转换。常用的开源库有:JSONModel、Mantle、MJExtension、YYModel等等,本文主要介绍一下MJExtension的底层实现,看一看小码哥如何设计这个轻量级的数模转换框架。 本着面向应用的

2017-07-23 18:31:00 329

原创 iOS的Core Text教程:制作一个杂志应用

点击上方“iOS开发”,选择“置顶公众号” 关键时刻,第一时间送达! 更新说明:本教程已经由Lyndsey Scott升级为Swift 4和Xcode 9。最初的教程由Marin Todorov所创作。 Core Text是一个底层的文本引擎,当与Core Graphics/Quartz框架配合使用的时候,可以对布局和格式进行细粒度的控制。 随着iOS 7的发布,App

2017-07-22 18:31:00 468

原创 最新iOS发布App Store详细图文教程

-

2017-07-21 18:31:00 498

原创 iOS蓝牙开发 Bluetooth蓝牙CoreBluetooth 蓝牙中心设备的实现 蓝牙外设的实现 有Demo

最近公司在做一个iOS蓝牙项目,在开发的过程中简单整理了一些与之相关的基础知识,在这里分享一下。

2017-07-20 19:01:00 675

原创 [iOS]调和 pop 手势导致 AVPlayer 播放卡顿

全屏 pop 手势支持;全屏 push 到绑定的控制器支持;为每个控制器定制 UINavigationBar 支持(包括设置颜色和透明度等);为每个控制器添加底部联动视图支持;自定义 pop 手势范围支持(从屏幕最左侧开始计算宽度)

2017-07-19 18:31:00 2735

原创 iOS传感器:App前后台切换后,获取敏感信息使用touch ID进行校验

今天咱们主要是说指纹识别传感器,在文章的最后也会顺带说一下距离传感器。

2017-07-18 19:01:00 550

原创 【2017年最全】 iOS面试题及答案

​设计模式是什么? 你知道哪些设计模式,并简要叙述?

2017-07-17 18:31:00 494

原创 苹果声称 WebRTC 是呼声最高的 Safari web 平台功能组件,实时通信会全面进入 WebRTC 时代

摘要 苹果宣布新版 Safari 也增加支持 Web RTC,浏览器之间可以实现实时通信。WebRTC,其全称为 Web Real-Time Communication(网络实时通信),是一项能够让浏览器支持实时语音会话或视频对话的技术。这一技术前身为 GIPS,本是由 Global IP Solutions 公司研发,2010 年,Google

2017-07-17 18:31:00 554

原创 iOS架构设计-URL缓存(下)

缓存设计 从前面对于URL Loading System的分析可以看出利用NSURLProtocol或者NSURLCache都可以做客户端缓存,但是NSURLProtocol更多的用于拦截处理,而且如果使用它来做缓存的话需要自己发起请求。而选择URLSession配合NSURLCache的话,则对于接口调用方有更多灵活的控制,而且默认情况下NSURLCache就有缓存,我们只要操作缓存响应的

2017-07-16 18:31:00 308

原创 多年iOS开发经验总结

老司机要发车啦!还不快跟上!

2017-07-15 18:31:00 382

原创 大话大前端时代(一) —— Vue 与 iOS 的组件化

序 今年大前端的概念一而再再而三的被提及,那么大前端时代究竟是什么呢?大前端这个词最早是因为在阿里内部有很多前端开发人员既写前端又写 Java 的 Velocity 模板而得来,不过现在大前端的范围已经越来越大了,包含前端 + 移动端,前端、CDN、Nginx、Node、Hybrid、Weex、React Native、Native App。笔者是一名普通的全职 i

2017-07-15 18:31:00 450

原创 iOS逆向工程之fishhook

峰哥在上一篇文章整理了在插件开发中如何HOOK 动态语言 Objective-C 中的方法,实际上静态语言 C 语言中的函数也是有办法 HOOK 的,这也说明了绝对的静态语言是不存在的。

2017-07-14 18:31:00 525

原创 杂谈: MVC/MVP/MVVM (一)

本文为回答一位朋友关于MVC/MVP/MVVM架构方面的疑问所写, 旨在介绍iOS下MVC/MVP/MVVM三种架构的设计思路以及各自的优缺点.

2017-07-13 18:31:00 410

原创 杂谈: MVC/MVP/MVVM (二)

MVP MVC的缺点在于并没有区分业务逻辑和业务展示, 这对单元测试很不友好. MVP针对以上缺点做了优化, 它将业务逻辑和业务展示也做了一层隔离, 对应的就变成了MVCP. M和V功能不变, 原来的C现在只负责布局, 而所有的逻辑全都转移到了P层. 对应关系如图所示: 业务场景没有变化, 依然是展示三种数据, 只是三个MVC替换成了三个MVP(图中我只画了Blog模

2017-07-13 18:31:00 315

原创 我是如何构建网络层

Tomasz Szulc 在建立网络架构的时候并不依赖第三方库和苹果的 CoreData,这使得它很容易拓展和测试。这个设计很赞。

2017-07-12 18:31:00 420

原创 苹果为开发者发布全新Bug Reporter:设计更清爽

苹果向开发者发送邮件,邀请他们试用全新的 Bug Reporter。苹果的 Bug Reporter(漏洞上报系统)被称为 Radar,这是一款为开发者准备的工具,可以递交苹果系统的各种 Bug。苹果在邀请中提到,在 Bug Reporter 中发现的 Bug ,可以直接通过 Bug Reporter 递交。 全新的 Bug Reporter 更新了视觉元素,重点就是可以方便快速递交

2017-07-12 18:31:00 375

原创 浅谈iOS Crash

序: iOS Crash问题是iOS开发中难以忽视的存在,本文就捕获iOS Crash、Crash日志组成、Crash日志符号化、异常信息解读、常见的Crash五部分介绍。 一、捕获iOS Crash 1、设置异常断点并运行 说明:设置Xcode异常断点后运行程序,发生Crash时,断点会定位到出错的代码行,但仅适用于开发阶段。线上APP的Crash还需要通过收集Crash机

2017-07-11 18:31:00 711

原创 40个只有程序员才看得懂的段子

1. 一程序员去面试,面试官问:“你毕业才两年,这三年工作经验是怎么来的?!”程序员答:“加班。” 2. 某程序员对书法十分感兴趣,退休后决定在这方面有所建树。于是花重金购买了上等的文房四宝。一日,饭后突生雅兴,一番磨墨拟纸,并点上了上好的檀香,颇有王羲之风范,又具颜真卿气势,定神片刻,泼墨挥毫,郑重地写下一行字:hello world。 3. 问:程序员最讨厌康熙的哪个儿子。

2017-07-11 18:31:00 1188

原创 iOS多线程全套:线程生命周期,多线程的四种解决方案,线程安全问题,GCD的使用,NSOperation的使用(上)

目的 本文主要是分享iOS多线程的相关内容,为了更系统的讲解,将分为以下7个方面来展开描述。 多线程的基本概念 线程的状态与生命周期 多线程的四种解决方案:pthread,NSThread,GCD,NSOperation 线程安全问题 NSThread的使用 GCD的理解与使用 NSOperation的理解与使用 Demo在这

2017-07-10 18:31:00 258

原创 iOS多线程全套:线程生命周期,多线程的四种解决方案,线程安全问题,GCD的使用,NSOperation的使用(下)

7 NSOperation的理解与使用 No.1:NSOperation简介 NSOperation是基于GCD之上的更高一层封装,NSOperation需要配合NSOperationQueue来实现多线程。 NSOperation实现多线程的步骤如下: 1. 创建任务:先将需要执行的操作封装到NSOperation对象中。

2017-07-10 18:31:00 226

原创 iOS 从0到1搭建高可用App框架(二)

前言 本文是继《iOS 从0到1搭建高可用App框架》之后,通过项目实践以及同行交流思考总结出来的一些新的架构思想,但初心仍不变,目的为搭建高可用App框架,保持框架底层健壮的同时让代码更清晰,为满足后期顶层业务开发时的需求,避免出现风格迥异的代码。

2017-07-09 18:30:00 370

原创 解读iOS 11新版App Store:如何玩转新版App Store,提升产品下载量?

IOS11公测版发布,再一次将所有人拉回新版AppStore上,上一次WWDC之后,很多人对改版有一个初步认知,重点无非两个:苹果将加大编辑推荐和搜索权重。而二者都跟ASO基础优化有很大关系。这次IOS11公测版关于详情页的信息就是对如何做好ASO优化的官方解释。未来App Store的ASO,掰开了说,白帽ASO(基础优化)的影响会大大增强,黑帽ASO(干预型)的影响会大幅降低,但说到底,下一步

2017-07-09 18:30:00 726

原创 如何在iOS开发中更好的做假数据?

当工期比较紧的时候,项目开发中会经常出现移动端等待后端接口数据的情形,不但耽误项目进度,更让人有种无奈的绝望。所以在开发中,我们常常自己做些假数据,以方便开发和UI调试。然而做假数据方法不同,效率和安全性都各不同,有时稍有不慎,还会产生很大的bug。因此本文拟结合我在贝聊的开发经验,讲一讲我们组在iOS开发中曾经用过的做假数据的方法及其优劣。 示例项目 为方便下文的说明,

2017-07-08 20:00:00 382

原创 新专利曝光:未来 MacBook 或配备虹膜解锁功能

每一代 iPhone 都拥有一个让它脱颖而出的独到之处,但是在即将到来的 iPhone 8 身上,它的亮点不止一个(比如全面屏)。根据近期的报道,苹果可能不会在 iPhone 8 的屏幕下方嵌入指纹传感器,而是采用足以取代 Touch ID 的虹膜扫描仪。 此外根据一项新发现,实用的虹膜扫描技术亦有望出现在未来的 Mac 产品线上。尽管很多人对手机虹膜解锁不感冒,觉得还是指纹传感器更方便。但

2017-07-07 18:30:00 274

原创 iOS程序员如何使用Python写网路爬虫

写网络爬虫,除了c/c++,第二门语言最好的选择就是python. 原因就是 1.语法简单 2.库太多,随便想要什么功能的库都找得到,简直编程界的哆啦A梦. 3.语法优美,不信?你去看看python超过两千行的代码再回头看看用oc写的超过两千行的代码,oc写的简直丑到极致(没命名空间,点语法调用和括号调用混用). 为什么要会写爬虫? 春节前有一件活无人认领,我就自告奋勇认领

2017-07-07 18:30:00 451

原创 你的技术生涯,还有几年?著名软件工程师如是说

阮一峰,著名软件工程师,译作《软件随想录》、《黑客与画家》《异常流行幻象与群众疯狂》《下一个大泡泡》。 2017年初,网上流传华为公司正在清理34岁以上的员工。 中国区开始集中清理34+的交付员工,去向是跟海外服务部门交换今年新毕业的校招员工,也就是进新人,出旧人。 这些旧人目测要被输出去海外,实际上就是变相裁员,这些30多岁的老杆子,英语又不好,拖家带口,能出去海外安心奋斗的没

2017-07-06 18:30:00 990

原创 作为iOS开发者,怎能不follow这52个牛人

对于每位iOS开发者来说,Twitter是个获得最新iOS开发技术和相关信息的好地方。如果你刚好有Twitter账户,可以关注以下为你推荐的该领域内的52个优秀人物。 1.Tim Cook 这位无需多言,苹果的CEO,超级大老板。 2.Chris Lattner Swift编程语言开发主导者。 3.Matt Galloway iOS开发者,知名图书作者。

2017-07-06 18:30:00 343

原创 如何在iOS开发中更好的做假数据?

当工期比较紧的时候,项目开发中会经常出现移动端等待后端接口数据的情形,不但耽误项目进度,更让人有种无奈的绝望。所以在开发中,我们常常自己做些假数据,以方便开发和UI调试。然而做假数据方法不同,效率和安全性都各不同,有时稍有不慎,还会产生很大的bug。因此本文拟结合我在贝聊的开发经验,讲一讲我们组在iOS开发中曾经用过的做假数据的方法及其优劣。 示例项目 为方便下文的说明,

2017-07-05 18:30:00 229

原创 没事刷个脸儿!iPhone8放弃指纹识别,改用3D刷脸

在各大手机厂商纷纷出奇招的情况下,留给苹果iPhone8去创新的机会真的还多吗?现在三星、小米等手机引领全面屏风潮,vivo又率先发布屏下指纹解锁,苹果似乎逐渐失去智能手机领导者的地位。 但是不用担心,苹果终究是苹果,憋大招什么的苹果最拿手了。最近有消息称,新版iPhone8可能采用3D刷脸解锁,取代此前盛传的指纹识别功能! 一般来说,指纹识别都集成在手机的实体Home键或者手

2017-07-05 18:30:00 1266

原创 iOS 11为苹果地图带来了哪些改进?

在地图 App 上,苹果公司一直都在追击着谷歌,而 iOS 11 也为苹果地图带来了许多改进,不如现在就让我们一起来汇总看看,截止到目前为止,iOS 11 到底为苹果地图带来了哪些不错的改进。   Flyover这绝对是一个非常酷炫的改变,iOS 11 的开发者放出了一个新的可位移的、3D 交互地图功能演示时,立即在社交媒体上吸引了大家的注意力。而在 iOS 11 系统中,Flyov

2017-07-04 18:30:00 536

原创 iOS11 beta iCloud Activation Lock曝漏洞

iOS 11 目前还是测试版,所以系统中难免会出现漏洞,不过有些比较严重的漏洞还是值得各位使用测试版的用户注意。在 iOS 11 的前两个测试版中就有一个漏洞,当 iCloud 被锁定时,使用设备的人还是可以激活设备的某些功能和特性。而这完全违背了 iCloud 被锁定之后锁定设备功能和限制的初衷。iPad 或 iPhone 被锁定到特定 iCloud 账户时,在没有正确的账户凭据的情况下,谁都不

2017-07-04 18:30:00 533

原创 iOS 11 测试版泄密,iPhone 8 新功能再次确认

距离苹果今年的新 iPhone 发布时间越来越近,各式各样的传闻早已传的满天飞。最近,又有开发者在 iOS 11 中发现了一个被苹果隐藏的全新声音文件,暗示了传闻已久的无线充电功能将在 iPhone 8 上得到实现。 近日,一位国外开发者解码了 iOS 11 测试版的原始资料,意外发现了一个名为「

2017-07-04 18:30:00 307

原创 一篇小学生作文《我的爸爸在华为》,看哭无数人!

近日,一篇名为《我的爸爸在华为》文章在网络走红,作者吴可染还是一个小学三年级的学生,他有一个在华为上班的爸爸,总是很忙!忙到没时间回家、没时间吃饭,甚至经常“不辞而别”。小家伙平淡的字句里,透露出不少职工家庭的心声:加班文化盛行,最受伤的还是孩子。   “从我记事起,爸爸总是很忙碌。白天他上班我上学,可他晚上总是不能回家吃晚饭。几乎每天都是天黑之后才能回来。”因为爸爸在华为,所以他总是也不能陪

2017-07-03 18:30:00 1819

空空如也

空空如也

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

TA关注的人

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