RN项目调试过程中遇到的坑

2023-07-13
阅读 4 分钟
1k
ios端:yarn react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios

RxSwift + MVVM 初体验

2019-09-10
阅读 6 分钟
8.1k
作为一名iOS开发者,必须跟上时代的潮流,随着swift ABI越来越稳定,使用swift开发iOS APP 的人越来越多。从网上看了很多文章,也从github上下载了很多demo进行代码学习。最近使用RxSwift+MVVM+Moya进行了swift的体验之旅。加入到swift开发的大潮中去。

iOS开发架构

2019-09-02
阅读 3 分钟
3k
一、原件架构的原则 软件架构的七大原则如下: 开闭原则 依赖倒置原则 单一职责原则 接口隔离原则 迪米特法则(最小知道原则) 里氏替换原则 合成/聚合复用原则 1.开闭原则 对扩展开放,对修改关闭。 说的是,在设计一个模块的时候,应当使这个模块可以在不被修改的前提下被扩展.换言之,应当可以在不必修改源代码的情况下...

swift开发利器-RxSwift

2019-08-26
阅读 2 分钟
4.3k
因为使用RxSwift框架我们可以使target-action、代理、闭包回调、通知、多个任务之间的依赖、等待多个并发任务完成之后处理结果等等的编程场景变得逻辑清晰、易读、易维护。

iOS内存相关的知识点整理

2019-08-03
阅读 2 分钟
2.5k
iOS的内存相关知识是我们开发iOS APP的基石之一,也是面试中必然会问的问题。内存知识的融会贯通,与及内存相关问题的解决,是iOS开发者必须要掌握的。

对iOS代码重构的一点看法

2019-07-16
阅读 2 分钟
3.8k
基本上每一个项目都会经历这样的一个过程,前期的快速迭代,去做市场的试探,这个时候的要求是怎么快怎么来,经过市场试探,找到对应的盈利模式,与及摸准了用户的使用习惯,这个时候产品会进入一个稳步发展的阶段,这个时候很多公司就会开始考虑怎么样更好的去维护这个产品,这个时候重构就来了。

swift的一些面试题

2019-07-14
阅读 2 分钟
4.6k
struct是值类型,class是引用类型。 值类型的变量直接包含它们的数据,对于值类型都有它们自己的数据副本,因此对一个变量操作不可能影响另一个变量。

ffmpeg开发知识点回顾

2019-07-04
阅读 2 分钟
3.1k
视频花屏/卡顿原因 如果GOP分组中的P帧丢失会造成解码端的图像发生错误 为了避免花屏问题的发生,一般如果发现P帧或者I帧丢失,就不显示本GOP内的所有帧,直到下一个I帧来后,重新刷新图像。 时间基 tbr: 帧率 tbn:time base of stream tbc:time base of codec 时间戳 PTS: Presentation timestamp DTS: Decoding time...

直播知识结构整理

2019-07-02
阅读 1 分钟
2.5k
文章内容来自于逻辑教育公开课。 总结:以上主要是对音视频开发中用到的相关知识进行了一个整理,囊括了流媒体知识、直播技术点、直播架构、音频知识点。

FFmpeg组织结构

2019-06-29
阅读 1 分钟
2.3k
学习ffmpeg之前,我们应该对ffmpeg的组织结构有一个大体的了解。ffmpeg安装好之后,使用cd /usr/local/ffmpeg命令进入到ffmpeg目录下,会看到ffmpeg的4个主要目录。

WebRTC源码目录结构

2019-06-28
阅读 1 分钟
4.7k
以下是对WebRTC入门学习课程的源码目录结构的整理,方便后续学习时进行查询。 源码对应的目录结构 目录 对应的功能 api WebRTC接口层,浏览器都是通过该接口调用WebRTC call 数据流的管理层,call代表同一个端点的所有数据的流入流出 vedio 与视频相关的逻辑 audio 与音频相关的逻辑 common_audio 音频算法相关 common_v...

FFmpeg常用命令合集

2019-06-20
阅读 2 分钟
8.5k
视频裁剪滤镜(播放器大小裁剪): ffmpeg -i killer.mp4 -vf crop=in_w-200:in_h-200 -c:v libx264 -c:a copy out.mp4

编辑器之神-vim 常用命令

2019-06-18
阅读 1 分钟
1.6k
在这个蔚蓝的星球上,流传着两大神器的传说:据说Emacs是神的编辑器,vim是编辑器之神。 拷贝/粘贴/删除 拷贝:yy/yw(yy:是拷贝整行,yw:拷贝一个词) 粘贴:p 删除:dd/dw(dd:删除一行,dw:删除一个词) vim光标移动 左下右上:h/j/k/l 跳到文件头:gg 跳到文件尾:G 行内光标移动 移动到行首:^ 移动到行尾 : $ ...

iOS 中gif图的显示

2019-06-14
阅读 3 分钟
5.5k
一、前言 iOS开发中,大部分时候我们显示一张静态图就可以了,但是有的时候为了UI表现更生动,我就有可能需要展示gif图来达到效果了。 网上找了一下,显示gif图的框架找到了两个。 SDWebImage YYImage 二、显示本地gif图 SDWebImage和YYImage的显示本地图片代码。 {代码...} 三、加载网络的gif图 SDWebImage和YYImage的...

对NSArray和NSMutableArray的深拷贝/浅拷贝的探究

2019-06-14
阅读 5 分钟
6.5k
一、原起 下面两个问题,面试的时候应该经常会被问到。 对NSArray和NSMutableArray进行copy和mutableCopy分别会得到什么样的数组? 当NSString作为一个对象的属性时,我们应该使用strong还是copy来修饰呢? 今年三月份面试的时候,被这两个问题搞得很迷茫,今天特地研究了一下。相信您看完我的这篇文章和我有一样疑惑的...

macOS 下ffmpeg源码编译安装

2019-06-13
阅读 2 分钟
4.9k
打开mac 的控制台,切换到您想要保存源码的目录,执行git clone https://git.ffmpeg.org/ffmpeg.git命令下载源码。

iOS开发中定义枚举的正确姿势(NS_ENUM VS enum)

2019-05-31
阅读 2 分钟
9.1k
iOS开发中枚举也是经常会用到的数据类型之一。最近在整理别人写的老项目的时候,发现枚举的定义使用了多种方式。 方式1 {代码...} 方式2 {代码...} 方式3 {代码...} 方式4 这种比较特殊支持位操作。 {代码...} 针对于前三种方式,我们应该使用那一种更新好呢? 这是来自Stack Overflow的解释。 First, NS_ENUM uses a ne...

swift中的声明关键字详解

2019-05-26
阅读 9 分钟
4.3k
与声明有关的关键字:class、deinit、enum、extension、func、import、init、let、protocol、static、struct、subscript、typealias和var。

关于#define/extern/static的思考与总结

2019-05-23
阅读 4 分钟
3.9k
全局常量作为开发人员一定是一个比较熟悉的概念。全局常量的写法自然也比较多,最近在进行项目的常量重构时看到了各种各样的写法,其中宏定义占大部分,然而有很多使用宏定义是不规范的,而且宏定义只是在预编译阶段进行文本替换,不进行类型检查,从网上看到大量使用宏定义会拖慢编译速度。

swift开发中那些值得借鉴的写法

2019-05-21
阅读 4 分钟
2.2k
最近在学习swift,从github上下载很多demo进行学习,收获不小,发现了一些不错的写法,记录一下方便以后查询,同时分享给大家,共同成长。

手把手教你把作品上传到github上

2019-05-12
阅读 2 分钟
6.5k
为什么要把自己做的一些东西上传到github上?在软件行业竞争日益激烈的行情下,面试的时候,github上有高Star开源项目,绝对是个加分项。同时知识分享也是一种美德。这种双向受益的事,何乐而不为呢。下面就手把手教你把你自己做的项目上传到github上,让你在面试的时候脱颖而出。

swift5展示全球国家列表

2019-05-12
阅读 1 分钟
2.9k
CountryCodeList是swift5学习的一个项目。主要练习了UITableView的swift使用,使用HandyJson把从本地读取的json文件转化为数据模型数组。全球国家列表的数据来源是之前从一张全球国家列表的sql表中使用Python洗出来的数据,经过处理之后形成了一个Json文件。

马甲包审核被拒对应的处理方案

2019-05-10
阅读 2 分钟
4.6k
马甲包审核被拒,目前网上流传最广的就是2.1和4.3,在查看了很多文章之后,从两篇介绍的比较详细的文章中把这两个大礼包对应条款的解决方案,整理出来,为开发马甲包做一个准备,同时分享个大家。

iOS马甲包上架招式

2019-04-29
阅读 2 分钟
6.1k
马甲包是利用App store 规则漏洞,通过技术手段,多次上架同一款产品的方法。马甲包和主产品包拥有同样的内容和功能,除了icon和应用名称不能完全一致,其他基本一致。

对MBProgressHUD的二次封装-XBLoadingKit

2019-04-18
阅读 2 分钟
5k
我为什么要对MBProgressHUD进行二次封装?今年新找的这份工作,项目的创建的时间比较早了,2014年创建的项目,项目中现在使用的一些操作提示,既然还是我刚开始从事iOS开发工作的时候就用到的开源的第三方toast。可以说这个开源库的年龄比我的工作年龄都长了,现在早都过时了,而且它的样式不好看,跟MBProgressHUD差远...

数据库的常用操作

2019-03-13
阅读 3 分钟
3.7k
SQL全称是Structured Query Language,翻译后就是结构化查询语言,是一种数据库查询和设计语言,用于存取数据与及查询、更新和管理关系数据库系统。

iOS数据持久化方案

2019-03-09
阅读 3 分钟
6.5k
技术由来 数据持久化是iOS开发中必不可少的一项技能。因为开发中我们多会涉及到用户信息存储、文件存储、应用内容缓存中的一个或者几个场景。 数据持久化的几种方式 NSUserDefaults plist keychain(钥匙串) 归档 沙盒 数据库 数据持久化几种方式的一览图: 1.NSUserDefaults NSUserDefaults用于存储用户的偏好设置和用...

SDWebImage学习

2019-03-05
阅读 7 分钟
2.8k
SDWebImage是iOS开发中主流的图像加载库,它帮我们处理内存缓存、磁盘缓存与及图像加载的一系列操作。使用起来方便快捷,让我们更好的专注于业务逻辑的开发。

AFNetworking源码学习

2019-03-03
阅读 9 分钟
2.5k
AFNetWorking主要分为5个部分。NSURLSession、Reachability、security、Serialization、UIKit。其中NSURLSession是整个网络请求开源库的灵魂,对外提供了丰富的网络请求接口。包括GET、POST、HEAD、PUT、DELETE,与及文件上传的接口。整个AFNetWorking组织结构如下:

iOS 高效的分页加载

2017-09-30
阅读 2 分钟
5.6k
今天在review代码的时候发现之前的tableview 和 collectview 的分页加载逻辑还有优化的余地,于是进行了优化。 一、tableview的分页加载的代码对比 没有优化之前的代码如下: {代码...} 优化之后的代码如下: {代码...} 二、collectonview的分页加载的代码对比 没有优化之前的代码如下: {代码...} 优化之后的代码如下:...