iOS 开发杂谈

57 篇文章
16 人订阅

全部文章

s_在路上

Apple Pay 编程指南

在发布近两年、历经各种周折之后,苹果的 Apple Pay 移动支付服务终于在 2016 年 2 月 18 日来到了中国大陆。

224
s_在路上

Apple Pay 申请 MerchantID

登录苹果开发者中心,在 Identifiers 下选择 Merchant IDs,点击右上角添加按钮添加 Merchant ID; 输入描述信息和标识符,点击...

201
s_在路上

Apple Pay 整体流程

下图为目前国内 Apple Pay 支付接入的一个通用的流程(银联 API 模式),仅供参考:

161
s_在路上

Apple Pay 接入工程

创建一个工程设置其 Bundle ID 必须和描述文件中的 Bundle ID 一致。

614
s_在路上

浅谈 __attribute__

__attribute__ 是一个编译器指令,其实是 GNU C 的一种机制,本质是一个编译器的指令,在声明的时候可以提供一些属性,在编译阶段起作用,来做多样化...

632
s_在路上

浅谈 iOS ARC 内存管理

在 ARC 环境下,id 类型和对象类型和 C 语言其他类型不同,类型前必须加上所有权的修饰符。 所有权修饰符总共有4种:

822
s_在路上

九宫格常用的宏

773
s_在路上

如何实现LRU缓存淘汰算法

LRU:Least recently used,最近最少使用。缓存算法根据数据最近被访问的情况来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问...

971
s_在路上

为什么数组都是从0开始编号

为什么数组都是从 0 开始编号,首先先了解一下数组的概念。 数组 Array 是一种线性表数据结构,是一组连续的内存空间,用来存储一组具有相同类型的数据。数组...

1283
s_在路上

浅谈面向对象的六大原则

核心思想:不要存在多于一个导致类变更的原因,通俗的说,即一个类只负责一个功能。如果一个类里面添加了多个功能,当其中有一个功能发生了变化,就会有多种原因引起这个类...

812
s_在路上

浅谈第三方 SDK 和自定义 crash 上报冲突问题

在开发 iOS 应用,解决 Crash 问题始终是一个难题。Crash 分为两种,一种是由 EXC_BAD_ACCESS 引起的,原因是访问了不属于本进程的内存...

1542
s_在路上

浅谈 LinkMap 检查每个类占用大小

LinkMap 文件是 Xcode 产生可执行文件的同时生成的链接信息,用来描述可执行文件的构造成分,包括代码段 __TEXT 和数据段 __DATA 的分布情...

1274
s_在路上

HTTPS 之原理

HTTPS 在传输数据之前需要客户端与服务端之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL 协议是一套加密传输的协议,使用了非对...

1796
s_在路上

HTTPS 之对称加密与非对称加密

加密 encryption 与解密 decryption 使用的是同样的密钥 secret key,对称加密是最快速、最简单的一种加密方式。加密和解密算法是公开...

1664
s_在路上

浅谈 NSTimer 是否精确?

NSTimer 的启动依赖 RunLoop,如果在主线程中做了耗时的操作,当前 RunLoop 持续的时间超过了定时器的间隔时间,那么下一次定时就被延后了。

1222
s_在路上

iOS 编译过程

iOS 编译采用 Clang 作为编译器前端,LLVM 作为编译器后端,编译器前端负责语法分析,语义分析,生成生成中间码 (LLVM IR),在这个过程中,会进...

1872
s_在路上

iOS 泛型 ObjectType 协变 __covariant 逆变 __contravariant

__covariant(协变):用于泛型数据强转类型,可以向上强转,子类可以转成父类。 __contravariant(逆变):用于泛型数据强转类型,可以向下...

1473
s_在路上

iOS 开发小技巧

在使用view的缩放的时候,layer.border.width随着view的放大,会出现锯齿化的问题,解决这个问题需要设置这个属性。

1143
s_在路上

浅谈 iOS NSNotification

NSNotificationCenter 就相当于一个广播站,使用 [NSNotificationCenter defaultCenter] 来获取,NSNot...

923
s_在路上

浅谈 AutoreleasePool 的实现原理

在 MRC 的环境下,可以通过调用 [obj autorelease] 将对象添加到当前的 autoreleasepool 中,来延迟释放内存;

1982

扫码关注云+社区