PaysonChen Blog

「认识自己,接纳自己;改变自己;超越自己」

iOS自动化调试:自动编译启动

This is a subtitle

iOS自动化调试:自动编译启动 最近发现了一个莫名其他的BBUG,程序已启动就出现了一个崩溃,崩溃堆栈让人摸不着头脑: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 libobjc.A.dylib _cache_getImp + 8 1 libobjc.A.dylib _object_getMethodImplementation + 212 2 Cor...

iOS构建:自动配置iOS证书

证书自动化部署

1、背景 Apple开发证书存在一年一度过期的情况,证书的不匹配,或者新环境下的流水线、以及后续可能存在的集群化构建,可能需要手动配置证书后才能正常执行构建任务 2、方案 为了使构建流水线不需要跟随每年的证书更新而需要人工维护,期望在构建时能新增证书部署环节。为了兼容各种不同流水线,这里就用简单的shell脚本实现 2.1 证书获取及更新 2.1.1 证书的分类 ​ p12...

问题解决:Xcode15无法创建Category

Xcode bug修复

1、背景 升级了xcode之后,发现创建category文件失败 2、解决 通过查找资料,发现xcode15 缺乏两组文件: CategoryNSObject 路径如下: 1 vi /Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates/File\ Templates/M...

iOS组件化:工具篇 specific_install 安装使用遇到的问题

gem工具篇

1、specific_install简介 ​ rubygems plugin that allows you you to install a gem from from its github repository (like ‘edge’), or from an arbitrary URL 2、安装 一般而言,specific_install的安装直接从rubygem的源上安装就行...

iOS话外篇:分发详解

分发

1.背景 在没有良好的移动端CI/CD(比如腾讯蓝盾)背景下,需要先通过自行寻找分发方案,当前使用蒲公英应用内侧分发平台进行分发,由于免费版存在使用限制,比如对版本号数量限制、以及存储大小限制等。后续考虑部署较为友好的CICD服务来解决此问题。 2.构建证书详解 4种构建方式解析: App Store : 用来发布到App Store, 使用发布证书编译。 ...

iOS组件化话外篇:Podfile 工程配置

cocoaPods

1、cocopaods生成 组织信息 ​ 模板修改 ​ podfile新增: 1 2 3 post_install do |installer| installer.pods_project.root_object.attributes["ORGANIZATIONNAME"] = "YOUR ORGANIZATIONNAME" end 在执行 1 pod install ...

Mac常规配置备忘

一些常用工具与环境配置备忘

Mac常规配置备忘 1 准备 1、设置键盘修饰键,command <—>option (个人偏好) 2、鼠标 => 自然滚动方式关闭(个人偏好) 3、显示隐藏文件 1 2 3 defaults write com.apple.finder AppleShowAllFiles -bool true killall Finder 2 App安装 1、chr...

iOS组件化实现之:实用工具沉淀及介绍

组件化过程中,有一些重复/高频的问题需要解决,倘若手动解决会带来重复劳动的时间损失,以及没有沉淀的效率损失,为了避免上述损失,沉淀一些工具分享

1.背景 ​ 组件化过程中,有一些重复/高频的问题需要解决,倘若手动解决会带来重复劳动的时间损失,以及没有沉淀的效率损失,为了避免上述损失,沉淀一些工具分享。 2.组件化工具介绍 2.1 Xcode编译错误解决工具 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 3...

构建流水线实践

1 背景 ​ 为了适应不通项目的自动化的需求,而且构建的方式和能力也在不断的迭代与演进,同时维护多个构建脚本存在成本与遗漏,因此将打包脚本的通用能力抽离,通过配置参数进行不同项目的构建。 1 2 3 4 5 6 7 8 9 10 11 12 # [目的] # 为了使流水线建设趋于可维护,易维护,可迁移,易迁移,对构建逻辑进行模块化、将构建主流程划分为:构建前、构建、构建后,三大模块 # ...

Charles HTTPS实践

Charles HTTPS 实践 1、背景 在构建充电桩能力的需求背景下,需要对竞品数据进行收集评估,以前是通过截图+ocr方案进行数据收集,效率低下无法满足数据更新的及时性,现在需要采用更加高效的方式 2、方案选择 咨询之前做过类似工作的测试团队,无法给到比较可靠的方案,一开始选择逆向方案,通过移动端组内评估,以及咨询业内的安全工程师,逆向方案 ,代价较高,且暂无这方面的能力储备,...