摘要:在上面的中,苹果还对具体的细节做出了要求。不过,就在今天,苹果宣布将这个无限期推迟。不网络请求之与的二次封装及意义之后,被苹果抛弃,该来的即便是迟些,但最终肯定会来。适配,极光推送用户要做这处更改升级至建议尽快升级。
iOS10 通知 extension 之 Service Extension 你玩过了吗?
iOS10 通知 extension 之 Service Extension 你玩过了吗
问题描述: 在我们的项目中,因为大量的使用第三方库,经常会出现各种三方库,以及我们自己再敲代码时候调用系统方法却没有实现到时的各种各样的黄色警告。作为一个有追求的程序员,不仅仅是为了实现功能而实现功能。如何去掉这些烦人的黄色警告呢?环信easyUI中的黄色警告 软件环境: Xc…
AFNetWorking 一款轻量级网络请求开源框架,基于 iOS 和 mac os 网络进行扩展的高性能框架,大大降低了 iOS 开发工程师处理网络请求的难度,让 iOS 开发变成一件愉快的事情。
内存缓存 (YYMemoryCache)
存储的单元是_YYLinkedMapNode, 除了 key 和 value 外, 还存储了它的前后 Node 的地址_prev,_next. 整个实现基于_YYLinkedMap, 它是一个双向链表, 除了存储了字典_dic 外, 还存储了头结点和尾节点. 它实现的功能很简单, 就是: 有新数据了插入链表头部, 访问过的数据结点移到头部, 内存紧张时把尾部的结点移除. 就这样实现了淘汰算法. 因为内存访问速度很快, 锁占用的时间少, 所以用的速度最快的 OSSpinLockLock
硬盘缓存 (YYDiskCache)
采用的是文件和数据库相互配合的方式. 有一个参数 inlineThreshold, 默认 20KB, 小于它存数据库, 大于它存文件. 能获得效率的提高. key:path,value:cache 存储在 NSMapTable 里. 根据 path 获得 cache, 进行一系列的 set,get,remove 操作更底层的是 YYKVStorage, 它能直接对 sqlite 和文件系统进行读写. 每次内存超过限制时, select key, filename, size from manifest order by last_access_time desc limit ?1 会根据时间排序来删除最近不常用的数据. 硬盘访问的时间比较长, 如果用 OSSpinLockLock 锁会造成 CPU 消耗过大, 所以用的 dispatch_semaphore_wait 来做.
AFNetWorking 基本是 iOS 开发中使用网络通信框架的标配,这个框架本身比较庞大,也很复杂,但是使用起来非常非常简单。极大地提高了开发效率,让我们更加专注于业务逻辑的实现。
像这种经常使用用又比较重要的内容,我觉得要做到 知其然亦知其所以然,然后梳理总结常用方法,到最后夯实基础、活学活用。
IOS 安全学习资料汇总
苹果在 WWDC 2016 上宣布:2016 年底将要求所有 APP 适配苹果的 App Transport Security,简单地说就是除了特殊情况(浏览器、第三方服务、媒体)外,APP 跟服务端的通信必须使用 HTTPS 协议,否则 iOS 9 和 macOS 10.11 起,操作系统将有能力阻止所有的明文 HTTP 请求。在上面的 session 中,苹果还对具体的细节做出了要求。不过,就在今天,苹果宣布将这个 deadline 无限期推迟。
"CAShapeLayer 是 CALayer 的子类,但是比 CALayer 更灵活,可以画出各种图形,当然,你也可以使用其他方式来画,随你。
引言:一个 app 的初始阶段,必然是先满足各种业务需求。然后,经过多次版本迭代之后,先前的由于急于满足需求而导致的杂乱代码则会充斥整个项目。而此时,项目有了一定的规模,有了一定数量的开发人员,那么为了达到快速迭代版本的需求,则是需要有一个强大的架构来支撑。 在开始谈 app 架构之前…
一些列表经常需要编辑多选的功能,而 UITableview 自带多选删除的功能,使用起来方便,不需要自己去做数据存储和选中状态转换,可以减少不少开发时间。下面就来介绍下 UITableview 多选的使用。
最近在项目中遇到一个需要在 tableView 上加下拉列表的界面,一开始想的挺简单的,决定用两个 tableView 来做,在一个 tableView 的自定制 cell 中加一个 tableView。但是遇到最大的一个问题就是,下拉列表要比自定制的 cell 长很多,导致超出父视图的界限而无法点击,所以决定直接将下拉列表加在 self.view 上。
之前在做直播的时候,参照了映客 App,发现其首页的效果还挺不错,在网上找了一下相关仿映客 App 代码和博客,大部分都是说如何播放直播流和推流,对于 UI 这块甚少,所以我自己花了点时间研究了一下映客的首页 UI 效果。
App 中最常用 轮播图, 关于它的实现有很多方法 如 : Anination, UIScrollView, UICollectionView . 动画是另一种思路, UICollectionView 继承于 UIScrollView. 作者今天就用 UIScrollView 讲一下 , 分页效果下 滑动宽度小于屏幕宽度 露出上下页内容, 或 滑动视图之间 间隙问题
起始阶段
—-> cpu 处于睡眠状态,等待事件发生
—-> 手指触摸屏幕
介绍了 iOS 开发中几种图片处理过程中的情况。
详细介绍写出漂亮的 ShineButton
大家都知道,UINavigationController 对象有一个方法 pushViewController,用来做视图跳转,也是在 iOS 开发中常用的页面转换方法之一。大多数 APP 的结构一般都是,使用一个 UITabBarController,每个 tab 上都是一个 UINavigationController,然后各个 tab 上的 navigationController 自己管理各自的视图栈。
iOS 网络 --『文件下载、断点下载』的实现(三):AFNetworking。
关于 LLDB 调试,很多 iOS 开发者可能就是停留在会下简单的断点,使用最多命令也就是 po。无可厚非,这些简单的调试对于简单的问题来说应该是游刃有余。但是如果稍微复杂一些的问题,比如我之前遇到过友盟 SDK 里面的一个问题。我很想往里面下一个断点,可是对于. a 的静态库来说,这根本不可能,最终还是我们组大牛使用命令的方式下了断点解决了这个问题。感觉这些知识很有必要,我于是把 LLDB 的基本调试命令都学习了一下,并在此与大家分享。
5 年 iOS 经验做的基础工程送给你,起步就领先别人。
在这里总结一些 iOS 开发中的小技巧,能大大方便我们的开发,持续更新。
分析系统查找第一响应者的过程实现
看到一篇看起来好全的 iOS 面试题分享给大家
在日常开发中, 经常会遇到根据字典的 Key 对 Value 进行排序的问题, 所以对于此类问题抽出一个通用方法, 废话不多说, 上代码.
前言 故事从一年前说起,当时由于接到一个新项目开发任务开发之前想了想以前项目UI布局方式大多数都是frame计算有的也用到masonry。 frame大家都知道适配各种屏幕非常繁琐各种坐标size计算代码很冗余后期难以维护。 masonry开源给iOS开发者带来福音简化了Aut…
欢迎大家关注我的公众号,我会定期分享一些我在项目中遇到问题的解决办法和一些iOS实用的技巧,现阶段主要是整理出一些基础的知识记录下来 文章也会同步更新到我的博客:http://ppsheep.com 我们先来看一下效果图 这是从一个APP直接跳到另外一个APP的效果 1 这是从…
最全面试题
最近碰到一个用户 在使用我们 微链 App 的时候,在分辨率低或者频率低的显示器上扫不出二维码。然后网上找了很多,试了很多,还是没有找出合适的方法,想想把三种扫描(系统原生 API,ZBar,ZXing)写个 Demo,做个小总结,看看从什么地方可以找到解决方法,也希望各位大神能给我指条明路
按钮是应用中最常见的, 最基本的一个控件。按钮的样式多种多样,系统默认样式为左右结构,图片在左边,文字在右边。系统按钮完全无法满足开发的需求,我们只能自己定制出想要的样式。
**最重要的话写在前面:本文从现在开始不允许任何公众号、论坛社区、微博转载。已经转载的管不了了,后面看到这句话请一定不要转载,谢谢。 这篇文章引起这么大反响是我始料未及的,本意只是想记录下自己这段时间的经历,完全没想到被转载出去之后这么多人来看。一开始我自己发在简书和掘金,都是…
SDWebImage 相信对大多数开发者来说,都是一个不陌生的名字。它除了帮助我们读取网络图片,还会处理这些图片的缓存。它的缓存机制到底是什么样的呢,让我给跟大家唠叨唠叨,希望你能有收获。
前言 由于大陆相关部门出台的新规定指出,应用在未经用户允许的前提下,系统不能授予其使用联网、获取定位的功能。Apple 在 iOS 10 操作系统中加入了关于应用使用数据的授权弹窗提示,用户在 iOS 10 系统中第一次打开应用时,会被要求对于是否授予应用联网权限进行选择。 不…
iOS9.0 之后,NSURLConnection 被苹果抛弃,该来的即便是迟些,但最终肯定会来。对于迷恋 NSURLConnection 还要适配 iOS 低版本的公司,就不得不三思了,当然,使用 NSURLSession 也是不错的,但面对成熟的 ASI 和 AFN,我们更有理由选择。
Change 1:升级至 Xcode 8 建议尽快升级。使用 iOS 10 SDK 需要 Xcode 8 的支持。iOS 10 推出两周内,安装率就已经达到 48.16%,不升级 Xcode 8 并适配 iOS 10 意味着你现在可能已经损失了 50% 的高端客户,而且在未来的…
这份学习资料是为 iOS 初学者所准备的, 旨在帮助 iOS 初学者们快速找到适合自己的学习资料, 节省他们搜索资料的时间, 使他们更好的规划好自己的 iOS 学习路线, 更快的入门, 更准确的定位的目前所处的位置.
刚刚过完中秋节,第二天 app 上线被拒,原因是因为启动 app 就会 crash,领导大早上给我打电话让我去公司解决,好吧谁让人家是领导呢!正好 iOS10 系统刚刚出来,需要适配 iOS10,不然上线还是会拒,所以我果断升级了 xcode8.0。我总结了一些资料,接下来介绍一下 iOS 适配的一些知识点
或许很多童鞋还不知道,在 iOS 中收到推送通知时,如果 App 处于前台运行的情况下,推送的顶部弹窗是不会弹出来的。 然而就是有很多的产品经理都会提出类似这样的需求:那就是在 App 处于前台时一样要弹出推送的窗口,而且还要能点击,能跳转到指定页面,甚至这一需求还涉及…
快捷保存手机号码到系统通讯录中的需求在很多的应用中都会用的到,QQ、微信等社交软件都是可以见到的,虽然实现起来也是很简单的,小编还是把这个小功能整理一下,方便后面在需要的时候能方便的使用,也能方便朋友们能感到方便。有需要的直接可以拿去,甚是方便,废话不多说,代码已经上传 Github
iOS 静态库封装
本文主要说下纵横切换的商品列表页。
关于 NavigationController 的一些总结
中国大陆第二代身份证识别,自动读出身份证上的信息(姓名、性别、民族、住址、身份证号码)并截取身份证照片
pbxprojHelper 可以帮你快速配置 Xcode 工程文件,省去麻烦的人工手动操作。项目开源,使用 Swift 开发,详细介绍请见使用说明。除了 Mac App 外还提供了命令行工具 pbxproj,它集成了 pbxprojHelper 的核心功能,同样简易实用。
因为 README_ZH 中对使用方法已经讲得很详细了,这里重点说的是产品方案和技术实现。
如今,日子是越来越好了,大多数的同学有时还是管不住自己的嘴,一不留神把自己吃成了 “小胖子”;软件也如此,随着科技的发展,手机硬件配置的提高,手机 App 的功能也越来越多,经过 1 年左右的开发叠代,“百度高考 iOS” 从最初 1.0 版的 10MB 左右,不知不觉,安装程序已 43MB + 了,唉,“减肥”迫在眉睫啊!!!!
总结了 iOS 开发过程中的一些常用宏,以后会陆陆续续添加进来。
正则表达式,又称正规表示法,是对字符串操作的一种逻辑公式。正则表达式可以检测给定的字符串是否符合我们定义的逻辑,也可以从字符串中获取我们想要的特定部分。它可以迅速地用极简单的方式达到字符串的复杂控制。
楼主项目中需要有一个轮播图,因为比较简单,就自己写了个,因为是从网上弄得图片 所以用了 SDWebImage 这个三方库 当然自己也可以去掉。
本文为 iOS 自定义视图封装《一劳永逸》系列的第三期,旨在提供封装思路,结果固然重要,但理解过程才最好。授人以鱼不如授人以渔。
这次的问题是网络多线程相关的。
从流程图,到功能实现细节,介绍了 iOS 最流行的下拉刷新控件:MJRefresh。
通过 NSObject 的分类实现使用简单的主题更换。
AFNetworking 3.0 源码解析之 UIKit
delegate 属性为什么使用 weak ?
xib/storybard 连接的对象为什么使用 weak?
字符串 为什么使用 copy?
Block 为什么使用 copy?
iOS 获取经纬度单例类
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/16917.html
摘要:后记上的这篇译文质量不错,建议直接读这篇。这个人写了自己面试百度开发职位的一些题目,值得一读,反省一下自己是什么水平。 过去几年里我和我的团队做的事情太杂了,甚至还扑在了cocos2d-x上,接下来终于可以专注在iOS和Android原生开发领域了,所以今天特意花了一天时间补课,把唐巧的博客截止到今天(2014.12.19)的好文都看了一遍,特此收藏一些有价值的文章: 设置系统控件...
摘要:今天,我我的后端书架后端掘金我的后端书架月前本书架主要针对后端开发与架构。尤其是对称加密,非对称加密,私钥加密,公钥加密滴滴动态化方案的诞生与起航掘金这是滴滴架构组发布的第一篇公共技术文章,本文将介绍自研的动态化方案。 android 阿里面试题锦集 - Android - 掘金前几天突然就经历了阿里android实习内推的电面,感觉有好多以前看过的东西都忘记了,然后又复习了一下,找了...
摘要:今天,我我的后端书架后端掘金我的后端书架月前本书架主要针对后端开发与架构。尤其是对称加密,非对称加密,私钥加密,公钥加密滴滴动态化方案的诞生与起航掘金这是滴滴架构组发布的第一篇公共技术文章,本文将介绍自研的动态化方案。 android 阿里面试题锦集 - Android - 掘金前几天突然就经历了阿里android实习内推的电面,感觉有好多以前看过的东西都忘记了,然后又复习了一下,找了...
摘要:今天,我我的后端书架后端掘金我的后端书架月前本书架主要针对后端开发与架构。尤其是对称加密,非对称加密,私钥加密,公钥加密滴滴动态化方案的诞生与起航掘金这是滴滴架构组发布的第一篇公共技术文章,本文将介绍自研的动态化方案。 android 阿里面试题锦集 - Android - 掘金前几天突然就经历了阿里android实习内推的电面,感觉有好多以前看过的东西都忘记了,然后又复习了一下,找了...
摘要:但是这种方式对于接口和抽象方法是不管用的,因为抽象方法没有方法体,也就没有局部变量,自然也就没有局部变量表了是通过接口跟语句绑定然后生成代理类来实现的,因此它无法通过解析字节码来获取方法参数名。 声明:本文属原创文章,首发于公号:程序员自学之道,转载请注明出处! 发现问题 对Java字节码有一定了解的朋友应该知道,Java 在编译的时候,默认会将方法参数名丢弃,因此我们无法在运行时获取...
阅读 3074·2023-04-25 22:43
阅读 2307·2021-09-23 11:20
阅读 3372·2021-09-06 15:15
阅读 1134·2019-08-30 15:54
阅读 3334·2019-08-30 14:20
阅读 2718·2019-08-29 17:16
阅读 2938·2019-08-29 15:28
阅读 3280·2019-08-29 11:08