iOS Crash 杀手排名

iOS Crash 杀手排名随着公司嘟嘟牛app用户数量多了起来,崩溃的问题也多了起来,最近这几天终于得空,集中时间处理了一下崩溃的问题,现总结一下,希望对大家有所帮助。杀手 NO.1NSInvalidArgumentException 异常出现这个crash的原因有很多,选取了崩溃次数较多的crash。 crash 日志1-1-[__NSPlaceholderDictionary initW...
崩溃 crash 内存优化

总结自2016年的五条移动应用开发趋势

作为移动开发者,我们除了搞定日常工作之外,有时也需要睁眼看世界——了解自己身边发生了哪些变化又出现了哪些趋势。这不仅能够为我们提供宝贵的知识以解决当前技术问题,同时亦能够更为确切地把握用户希望从最新移动应用中得到的理想体验。那么,2016年到底给我们带来了哪些启示?下面来看五条移动应用相关开发趋势。安全性安全在今年的移动开发领域一直拥有极高热度。而苹果与FBI之间的激烈冲突也再次强调了保护用户隐...

代码规范

公司最近让审核代码,指定代码规范,综合总结了一下网上资源,老大最后采纳了,让继续补充,公司规模还行1000人左右,认为还是有一定的借鉴意义的.望大家补充!谢谢1.命名规则 (1)类名首字母大写,方法首字母小写,方法中的参数首字母小写,同时尽量让方法的命名读起来像一句话,能够传达出方法的意思,同时取值方法前不要加前缀“get” 变量名小写字母开头 常量以小写字母k开头,后续首字母大写 (2)...
命名规范 规模 资源 iOS

CAShapeLayer与UIBezierPath实现注水动画与正余弦水波纹动画

初步学习了CoreAnimation框架,总结了几个动画效果,主要是通过CAShapeLayer与贝塞尔曲线实现。先看下效果1.gif扇形下载进度要实现扇形的下载进度,有两种方法, 这里先使用第一种:1.使用设置UIBezierPath的角度2.使用 CAShapeLayer的stokeEnd属性//设置中心点 CGPoint point = CGPointMake(self.fram...

理解 : UDID、UUID、IDFA、IDFV

关于UUID的理解 :英文名称是:Universally Unique Identifier,翻译过来就是通用唯一标识符。 UUID是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成的API。 是一个32位的十六进制序列,使用小横线来连接:8-4-4-4-12 。 代码获取的方式: NSLog(@"uuid = %@",[NSU...
理解

Objective-c 多线程操作 自定义NSOperation 模拟下载

写在前面使用多线程下载图片,使用内存缓存和磁盘缓存。这里只为理解NSOperation及其派生类真要应用到APP中 请下载成熟的第三方库效果下载多张图片时可控制线程并发数分析自定义NSOperation 执行下载操作封装一个队列操作,创建N个线程,队列控制并发通过线程tag查找对应图片通过队列tag查找对应队列缓存设置 内存缓存和磁盘缓存下载完成通过delegate或block进行回调通知代码通...
多线程

程序员取悦女票的正确姿势---Tip1(iOS美容篇)

前言女孩子都喜欢用美图工具进行图片美容,近来无事时,特意为某人写了个自定义图片滤镜生成器,安装到手机即可完成自定义滤镜渲染照片。app独一无二,虽简亦繁。核心技术图片滤镜核心技术的基本思路如下:具体流程1、创建一个图像处理工具类注:该类实例包括一个图像处理方法,该方法在传入原始图像和一个颜色矩阵后生成一个处理好的图像。 @interface JHFeilterManager : NSObject...
iOS 滤镜

iOS IM即时通信之聊天界面UI框架

聊天效果.gif随便扯扯公司项目以前就集成环信, 后来不知道什么原因给撤了, 最近又不知道打什么鸡血要上IM, 界面一个礼拜搭建完成, 前前后后两个月一直在改pm, 改接口, 一把心酸一把泪, 由于后台拖拖拖, 产品改改改, 我的小儿子终于在前两个礼拜上线啦~(≧▽≦)/~啦啦啦,最近闲的蛋疼, 决定把我的小儿子抽出来给大家玩玩, 里面也借鉴了很多优秀的代码, 喜欢的可以参考(写的比较简单, 勿...

多线程之GCD,NSOperation和NSOperationQueue,NSThread

多线程的缺点: 1.拥有多个可执行的路径 2.线程问题难以调试 3.数据安全受到一定的影响,一个存,一个删的时候; 方法一 、 GCD:GCD队列始终是FIFO(先进先出)的方法来处理任务,但是任务执行的时间并不相同,因此先处理的任务不一定先结束,所以用底层的线程池来处理和管理用户提交的任务,串行队列线程池之需要维护一个线程即可,并发队列线程池需要维护多个线程; 创建队列和访问队列...

最近开发的avplayer视频播放器-未完待续

1.h中的代码#import UIKit/UIKit.h #import "JZSVideoHttpTool.h" // 播放器的几种状态 typedef NS_ENUM(NSUInteger, JZSVideoPlayerState) { JZSVideoPlayerStateFailed, // 播放失败 JZSVideoPlayerStateBuffering...
开发 视频播放器