引言

欢迎大家来到#公众号:iOS逆向的《iOS进阶》专栏

本文列出学习大纲,同时这也可以作为大家学习《iOS进阶》这个专栏的索引。
文中的蓝字都是传送门,点击进入即可

I 、 网络

iOS网络请求指南


iOS进阶专栏- 总目录(持续更新)_电子签名

1.1 通信

1.2. IPC

iOS AppStore Search optimize【Inter process Communication】之 去掉对rocketbootstrap的Depends依赖

3、目的:是想在自己的deb 自带rocketbootstrapd,避免每次部署都从bigBoss 源更新。
4、相关文章:iOS AppStore Search optimize【 ASO项目使用的技术】之 Inter process Communication By Rrocketbootstrap

II 、支付解决方案

2.0 支付相关的基础知识

2.1 消息推送后台语言播报(包括app处于杀死状态)

2.2 收银app必备模块:收银台、电子签名

2.2.1计算器

iOS计算器:采用NSDecimalNumber 进行表达式的精准计算(计算字符串数学表达式)【案例:折扣计算器(完整demo源码)】

2.2.2 电子签名

2.3、商户交易风控

1、盗刷拒付风险
2、疑似欺诈、电诈、套现风险
3、异常大额、异常测试:
4、跨境风险
iOS进阶专栏- 总目录(持续更新)_iOS进阶目录_02

iOS进阶专栏- 总目录(持续更新)_ios_03
iOS进阶专栏- 总目录(持续更新)_计算器_04

2.4 处理用户输入内容(金额/手机号码等)

2.5 商品详情页

2、应用场景:商品详情页以及需要展示大量图片的界面
3、核心原理
3.1)按照图片的原来宽高比进行缩
3.2)UICollectionView的高度自适应

2.6 反馈页面

2.7 微信支付

2.8 封装银联接口协议

iOS网络请求指南之 【封装银联接口协议】(提交和返回数据都为XML格式)案例:对接条码支付综合前置平台被扫支付订单申请退款(退款查询)

2.9 OCR

iOS13扫描证件&银行卡信息识别;身份证识别 (正反) ;矩形边缘识别 ;自定义证件相机 (含demo源码)

2.10 商户交易汇总表

使用tab滑块进行切换/筛选不同级别的代理商数据

III、效率
  • 提高前后台联调效率

提前根据约定好的接口,使用Charles进行模拟数据

  • 重复写的代码自动生成:根据 JSON 自动生成 Model 文件

接口返回的Dto数据模型使用工具生成

3.1 架构模式

  • 代码组织的架构模式

MVC / MVVM (解耦和抽象)、组件化、路由

  • 改变编写代码方式的架构

响应式编程、链式编程、单向数据流

3.1.0 MVC、MVVM

3.1.1 链式编程

磨刀不误砍柴功:编写代替自己工作的自动化工具

3.1.2 路由:接口控制app跳任意界面

3.2 持续集成

  • 自动化构建(重复做的事都应该自动化,以提高开发效率)

其中涉及代码管理(git / svn),编译流程,证书和签名机制,自动化测试,打包发布。
其中还会有一些自定义的自动化流程(自动生成代码,根据 debug / release 包类型自动更改配置)

3.2.1 代码管理: CocoaPods

3.2.2 根据 debug / release 类型自动更改配置

3.3实用工具

3.3.1. 用户输入处理工具

3.3.2 图片压缩

3.3.3 提高开发效率的工具

磨刀不误砍柴功:编写代替自己工作的自动化工具

3.4 封装SDK

3.4.1 自定义相机

IV、 渲染

4.1 常用动画

iOS进阶专栏- 总目录(持续更新)_ios_09

iOS进阶专栏- 总目录(持续更新)_iOS进阶目录_10

iOS进阶专栏- 总目录(持续更新)_电子签名_11

V、 解决方案汇总

5.1 布局

例子:入库单详情界面未审核状态时展示审核按钮,否则隐藏审核按钮

iOS进阶专栏- 总目录(持续更新)_计算器_12

5.2 常用功能解决方案

5.2.1 蓝牙打印

iOS进阶专栏- 总目录(持续更新)_电子签名_13

iOS进阶专栏- 总目录(持续更新)_电子签名_14

5.2.2 本地化

VI 、 app上架指南

6.1 上架流程指南

6.2 ASO

see also