
iOS
文章平均质量分 81
_Understand
荣誉永远都不属于评论家,他们一直在等着别人犯错,然后告诉他们如何改进,荣誉只属于那些真正有行动的人。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
提高iOS编译速度的Cocoapods插件ppbuild
背景:随着项目的不断迭代,项目代码及依赖三方库和内部库越来越多,导致项目编译时间越来越长,浪费大量开发时间。cocoapods-ppbuild插件将三方库打包为静态库,从而提高项目编译时间使用:修改 podfile 文件,加入以下代码plugin 'cocoapods-ppbuild'1. 使用静态库编译:use_frameworks! :linkage => :staticuse_static_binary!使用动态库编译(动态库会拖累app使用时间,推荐使用静.原创 2021-09-30 16:11:26 · 466 阅读 · 0 评论 -
记:iOS使用GCDAsyncSocket外部如何设置keepalive
问题描述:最近在我的项目组中遇到一个问题,由于我们项目使用采用的是TCP+Protobuf来做主要通讯协议,心跳是使用udp。服务器分为多台,各服务器负责各自的任务,比如我们账号服务器只负责与用户数据相关的任务,推送服务器负责服务器向前端通知等等。当我们的TCP中间由于某种原因与服务器断开连接,但是服务器和客户端都没有接到断开通知,或者需要好长时间才能知道(大概10分钟,不确定的时间段),彼此之间...原创 2018-04-23 14:54:23 · 1379 阅读 · 0 评论 -
iOS中tcp+protobuf
iOS中 tcp+protobuf实现网络通讯。从安装到简单实用原创 2017-08-28 14:10:09 · 1041 阅读 · 0 评论 -
iOS RabbitMQ集成及使用
iOS RabbitMQ集成及使用iOS RabbitMQ集成及使用基本概念RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。如果不熟悉AMQP,直接看RabbitMQ的文档会比较困难。不过它也只有几个关键概念,这里简单介绍。RabbitMQ的结构图如下:几个概念说明:Broker:简单来说就是消息队列服务原创 2016-08-23 10:11:21 · 6643 阅读 · 4 评论 -
锯齿状图表绘制
锯齿状图表绘制锯齿状图形绘制CAShapeLayer :图形绘制层,CALAyer的子类,初始化时只需用CALayer的类方法layer。CAShapeLayer是一个通过矢量图形而不是bitmap来绘制的图层子类。你指定诸如颜色和线宽等属性,用CGPath来定义想要绘制的图形,最后CAShapeLayer就自动渲染出来了。当然,你也可以用Core Graphics直接向原始的CALyer的内容中原创 2016-08-23 10:11:13 · 2002 阅读 · 0 评论 -
矩形图表绘制
矩形图表绘制矩形图表绘制矩形图表绘制是根据每一项数量斜体增长矩形图表功能。在上篇日志中我讲到过使用CAShapeLayer配合UIBezierPath贝塞尔曲线绘制锯齿状图表。这篇中主要是说矩形图表绘制,涉及技术和上篇差不多,重复的具体就不说了。主要说一下CATextLayer,继承于CALayer。它以图层的形式包含了UILabel几乎所有的绘制特性,并且额外提供了一些新的特性。同样,CATe原创 2016-08-23 10:11:16 · 1729 阅读 · 0 评论 -
给ViewController减肥
我们已经看到一些用来创建更小巧的 view controllers 的技术。我们并不是想把这些技术应用到每一个可能的角落,只是我们有一个目标:写可维护的代码。知道这些模式后,我们就更有可能把那些笨重的 view controllers 变得更整洁。原创 2016-09-02 12:49:53 · 759 阅读 · 0 评论 -
并发编程、iOS多线程
并发所描述的概念就是同时运行多个任务。这些任务可能是以在单核 CPU 上分时(时间共享)的形式同时运行,也可能是在多核 CPU 上以真正的并行方式来运行。OS X 和 iOS 提供了几种不同的 API 来支持并发编程。每一个 API 都具有不同的功能和使用限制,这使它们适合不同的任务。同时,这些 API 处在不同的抽象层级上。我们有可能用其进行非常深入底层的操作,但是这也意味着背负起将任务进行转载 2016-09-05 14:58:42 · 928 阅读 · 0 评论 -
iOS处理图片的各种模糊效果
PDBlurImage演示了使用vImage如何处理图像的模糊效果。vImage框架适合高性能图像处理,使用vImage能够得到矢量处理的效果而不用使用矢量代码。原创 2016-09-06 10:46:41 · 1923 阅读 · 1 评论 -
动画不常见属性笔记
动画中不常见属性,但很容易用到的属性。笔记一下,转载请注明出处谢谢!!原创 2016-08-23 10:27:21 · 631 阅读 · 0 评论 -
显式动画
属性动画CAAnimationDelegate在任何头文件中都找不到,但是可以在CAAnimation头文件或者苹果开发者文档中找到相关函数。当更新属性的时候,我们需要设置一个新的事务,并且禁用图层行为。否则动画会发生两侧,一个是因为显式的CABasicAnimation,另一次是因为隐式动画(关于隐式动画后面我会介绍)。例如我们更改主视图的背景颜色:CABasicAnimation *anima原创 2016-08-23 10:11:24 · 505 阅读 · 0 评论 -
苹果推送机制(APNS)
苹果推送机制(APNS)苹果推送通知服务 (简称APNs) 是实现远程通知功能的主要内容. 它是一项将信息发送至 iOS 设备 (间接至 watchOS ), tvOS, OS X 设备强大且高效的服务. 每个设备都与 APNs 建立了一个可信任的加密的 IP 链接, 并使用这个持续链接来接受通知. 如果一个 app 有新的通知到达而这个 app 没有运行时, 设备会弹出提示框来告诉用户这个 ap原创 2016-08-23 10:11:18 · 1168 阅读 · 0 评论 -
iOS:直播动态评论和点赞效果
有人问我现在直播APP很火,动态的评论和点赞效果怎么做的。趁着最近有点时间就写了个demo供大家参考:图片和界面效果可以自己根据需求调整和优化。想要程序去做什么首先要明确自己想做什么,思考你的程序需要哪些信息等等。可能我们在写代码时发现之前的设计不切实际,或者想到一个更好的解决方案,或者等程序运行之后,想改变原来的设计思路,对程序做注释为今后的修改能提供很大的方便。(嘴笨,个人拙见)。原创 2016-09-07 11:29:49 · 7008 阅读 · 1 评论 -
SDWebImage 原理及使用
SDWebImage托管在github上。https://github.com/rs/SDWebImage这个类库提供一个UIImageView类别以支持加载来自网络的远程图片。具有缓存管理、异步下载、同一个URL下载次数控制和优化等特征。SDWebImage 支持异步的图片下载+缓存,提供了 UIImageView+WebCacha 的 category,转载 2016-08-24 10:57:43 · 353 阅读 · 0 评论 -
多线程GCD和Cocoa NSOperation实现原理
简介多线程是一个比较轻量级的方法来实现单个应用程序内多个代码执行路径。在系统级别内,程序并排执行,程序分配到每个程序的执行时间是基于该程序的所需时间和其他程序的所需时间来决定的。然而,在每个程序内部,存在一个或者多个执行线程,它同时或在一个几乎同时发生的方式里执行不同的任务。概要提示:iPhone中的线程应用并不是无节制的,官方给出的资料显示,iPhoneOS下的主线程的堆栈大转载 2016-09-02 11:03:51 · 600 阅读 · 0 评论 -
OpenGL详解
原文出处:http://blog.youkuaiyun.com/candycat1992/article/details/39676669支持大家去看原文,真是一片好的博文。关于OpenGL写点很详细也很透彻,博主更是一位妹子。。。写在前面 OpenGL能做的事情太多了!很多程序也看起来很复杂。很多人感觉OpenGL晦涩难懂,原因大多是被OpenGL里面各种语句搞得头大,一会gen一下,一会b...转载 2016-09-12 17:08:05 · 3841 阅读 · 0 评论 -
iOS:网络编程模式
IOS 可以采用三类api 接口进行网络编程,根据抽象层次从低到高分别为socket方式、stream方式、url 方式。一 、socket 方式 IOS 提供的socket 方式的网络编程接口为CFSocket。CFSocket是BSD sockets的抽象和封装,CFSocket提供BSD sockets几乎所有的功能,并与run loop集成,用来实现多线程网络编程和网络转载 2016-09-09 17:38:39 · 618 阅读 · 0 评论