随笔分类 -  iOS

摘要:@interface BaseClass : NSObject @property(nonatomic,strong) NSString *one; - (void)hello; - (void)func1; + (void)helloC; @end 阅读全文
posted @ 2023-08-16 17:45 zzfx 阅读(28) 评论(0) 推荐(0)
摘要:https://juejin.cn/post/6844903966329798669 cpu 耗时,IO 耗时 https://www.cnblogs.com/zyzmlc/p/14080984.html 2.2 main函数后 main函数阶段的优化建议主要有以下几点: 在main函数之后的did 阅读全文
posted @ 2021-05-07 00:15 zzfx 阅读(147) 评论(0) 推荐(0)
摘要:系统先读取App的可执行文件(Mach-O文件),从里面获得dyld的路径,然后加载dyld,dyld去初始化运行环境,开启缓存策略,加载程序相关依赖库(其中也包含我们的可执行文件),并对这些库进行链接,最后调用每个依赖库的初始化方法,在这一步,runtime被初始化。当所有依赖库的初始化后,轮到最 阅读全文
posted @ 2021-02-19 15:26 zzfx 阅读(305) 评论(0) 推荐(0)
摘要:With iOS 8 Apple has added a ton of user-facing goodness. The Health app, Apple Pay, and expanded TouchID capabilities — just a few things everyday us 阅读全文
posted @ 2020-07-12 17:13 zzfx 阅读(265) 评论(0) 推荐(0)
摘要:原文链接:Understanding iOS Exception Types (PS.由于未知原因已失效,经检查,文章中引用的链接都还有效 :) 翻译:CoderWangx 当你的iOS应用崩溃的时候,我们需要去分析异常日志以定位根本原因。崩溃可能是 “低内存崩溃 Low Memory Crash” 阅读全文
posted @ 2020-06-11 20:16 zzfx 阅读(2227) 评论(0) 推荐(0)
摘要:一. 简介 App的启动时间是衡量一个App性能的重要指标,或者可以说是App性能的第一印象。在这篇文章中,我们将要介绍启动时间的相关知识和打点统计。 二. 启动优化 2.1 App启动方式 首先了解一下App的启动方式分为两类: 1. 冷启动:从零开始启动App 2. 热启动:App已经存在内存当 阅读全文
posted @ 2020-03-13 17:17 zzfx 阅读(1514) 评论(0) 推荐(0)
摘要:Github:iOS-Source-Probe 源码探求 几天前 Github 的 RetVal 大神更新了可 debug 版本的 706 <objc/runtime.h> 源码,于是让源码阅读学习得以继续。本文将介绍个人学习 load 方法的全部流程。 load 方法的调用时机 从 Effecti 阅读全文
posted @ 2020-03-11 17:26 zzfx 阅读(392) 评论(0) 推荐(0)
摘要:uiapplicationmain: 基础元素的创建、关联与事件循环启动。 app\window\event\delegate\life circle Flowchart Flowchart of the default app launch sequence in iOS as of Xcode 阅读全文
posted @ 2020-03-09 21:07 zzfx 阅读(167) 评论(0) 推荐(0)
摘要:OS X的系统结构,维基百科上有这样一张图:&amp;amp;lt;img src="https://pic1.zhimg.com/50/1e0ea7a7b120b4adeaa76a606e278fea_b.jpg" data-rawwidth="556" data-rawheight="525" 阅读全文
posted @ 2020-03-06 10:58 zzfx 阅读(492) 评论(0) 推荐(0)
摘要:更好的理解(抽象)、更少的构建(配置)、更方便的表达(语言) 一、iOS系统的网络编程(DSL概念) ios缺省的网络编程只是给出了网络编程的基本概念: urlsession、request、responde、缓存、会话、鉴权体系等; 给出了DSL的基本概念; 需要程序员自己根据需要对这些概念进行组 阅读全文
posted @ 2019-10-11 16:35 zzfx 阅读(698) 评论(0) 推荐(0)
摘要:语言库 rx aop kvo 功能库 UI network data-model-map cache 跨平台库 wkjscorebridge jspatch 性能监控库:友盟 部署库:jspathc UI开源库 1、组件库 2、构建库(布局) 3、交互库:下拉刷新 4、渲染库 阅读全文
posted @ 2019-08-23 10:18 zzfx 阅读(219) 评论(0) 推荐(0)
摘要:因为swift没法打.a https://www.jianshu.com/p/ac629a1cb8f5 阅读全文
posted @ 2019-08-21 14:35 zzfx 阅读(379) 评论(0) 推荐(0)
摘要:While you can use any functional library, I personally prefer RxSwift because I have the most experience with it. However, there are many reactive lib 阅读全文
posted @ 2019-06-11 19:32 zzfx 阅读(258) 评论(0) 推荐(0)
摘要:三层通信模型: 应用层、解释层、会话层; 通信协议: 通信原语; 报文格式; 网络层: _evaluateJavascript 会话层: #define kQueueHasMessage @"__wvjb_queue_message__" #define kBridgeLoaded @"__brid 阅读全文
posted @ 2019-06-10 12:33 zzfx 阅读(525) 评论(0) 推荐(0)
摘要:一、静态语言+动态库的形式 静态语言+动态库的形式使用的模式是面向com编程; 每一个动态库对应一个com组件; 动态库通过网络+配置文件的形式动态部署; 支持模块和功能级别的动态升级和替换; 对主体功能无法提供维护; 二、动态语言+动态库: 除了能够提供模块级别的替换和动态升级,还能够提供代码(函 阅读全文
posted @ 2019-05-31 16:42 zzfx 阅读(440) 评论(0) 推荐(0)
摘要:硬修复: 直接修改工程源码,重新发版; 冷修复: 打补丁包,使用动态库和hook技术,在程序启动时完成问题代码修复;案例:iOS逆向工程; 特征:不修改原始代码、补丁发布、目前不支持动态发布; 热修复: 可执行文件内直接继承热修复启动机制; 程序启动后热修复引擎动态检查家在补丁包,完成动态hook; 阅读全文
posted @ 2019-05-29 18:06 zzfx 阅读(298) 评论(0) 推荐(0)
摘要:一、一条业务pipeline: 一个连接核心:coreanimation 二、两个进程: 1、app进程; 2、render进程; 首先,由 app 处理事件(Handle Events),如:用户的点击操作,在此过程中 app 可能需要更新 视图树,相应地,图层树 也会被更新。 其次,app 通过 阅读全文
posted @ 2019-05-23 16:37 zzfx 阅读(1407) 评论(0) 推荐(0)
摘要:一、触摸事件派发与视图绘制打包 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ __dispatchPreprocessedEventFromEventQueue __CFRUNLOOP_IS_CALLING_OUT_TO_AN_ 阅读全文
posted @ 2019-05-23 16:04 zzfx 阅读(1402) 评论(0) 推荐(0)
摘要:1、事件循环; 2、显示循环:displaylink;系统定时从gpu缓存获取图片信息显示在屏幕。 阅读全文
posted @ 2019-05-20 21:41 zzfx 阅读(455) 评论(0) 推荐(0)
摘要:https://blog.nswebfrog.com/2017/10/20/swift-practice-ui-chaining-code/ 阅读全文
posted @ 2019-03-10 22:03 zzfx 阅读(284) 评论(0) 推荐(0)