> *本文是丰亚东讲师在2021 ArchSummit 全球架构师峰会中「如何系统性治理 iOS 稳定性问题」的分享全文*首先做一下自我介绍:我是丰亚东,2016 年 4 月加入字节跳动,先后负责今日头条 App 的工程架构、基础库和体验... 我们先了解一下背景:大家都知道对于移动端应用而言,闪退是用户能遇到的最严重的 bug,因为在闪退之后用户无法继续使用产品,那么后续的用户留存以及产品本身的商业价值都无从谈起。这里有一些数据想和大家分享:有 2...
# 背景iOS 业界研发模式多为 CocoaPods + Xcode + Git 的多仓组件化开发模型。为追求极致的研发体验、提升研发效率,对该研发模式进行了大量优化,但目前遇到了以下瓶颈,亟需突破:- pod install 时间长:编译优... 仓库仅有应用配置信息,不包含任何组件代码。ARK 仓库大小仅 2 MB,在 1 s 内可以完成仓库下载 。在 MBox 中的使用仅需几步点击操作。首先选择要开发的产品,然后勾选 ark 模式,选择开发分支,最后点击 Create 便可以...
之前曾在[iOS优化-瘦身](https://mp.weixin.qq.com/s/wDcYvea5dTq0dh0PBwRu4A)文章中提到过iOS优化将会是一个专题,今天就带来iOS优化系列的第二篇,主要介绍一下启动优化,即如何减少应用的启动时间。其实关于这块... 是苹果的动态链接器,是一个专门用来加载动态链接库的库,是开源的。在 `XNU` 内核为程序启动做好准备后,执行由内核态切换到用户态,由 `dyld` 完成后面的加载工作。`dyld` 会首先读取 `mach-o` 文件的 `Header` 和...
# 【教程】浅谈ios混淆和加固加密```混淆:针对项目代码,代码混淆通常将代码中的各种元素(变量、函数、类名等)改为无意义的名字,使得阅读的人无法通过名称猜测其用途,增大反编译者的理解难度。虽然代码混淆可... 开发人员通常需要保留原始未混淆代码用于调试。操作时机:项目打包时的IPA``````加固:针对代码加固,加固是多维度的安全防护方案,包括反破解、反逆向、防篡改等,可以防止应用被各类常见破解工具逆向,安全性要远...
1.3 引入调试工具 - DevTools组件(可选)6.12.0+ 支持开发调试阶段集成,请勿带入线上环境。 DevTools是辅助开发者或测试人员进行应用内埋点验证和SDK接入问题排查的组件。 SDK subspecs 添加 DevTools objectivec... iOS SDK下载 SDK版本 MD5 增长营销套件SDK下载 6.16.6 f3a0cf7f5713971c4b9fbebfaf5b408c 将安装包下的文件复制到项目文件夹下,并在XCode中依次添加到项目中。添加依赖: libz.tbd libsqlite3.tbd CoreGraph...
1.3 引入调试工具 - DevTools组件(可选)6.12.0+ 支持开发调试阶段集成,请勿带入线上环境。 DevTools是辅助开发者或测试人员进行应用内埋点验证和SDK接入问题排查的组件。 SDK subspecs 添加 DevTools objectivec... iOS SDK下载 SDK版本 MD5 增长营销套件SDK下载 6.16.6 f3a0cf7f5713971c4b9fbebfaf5b408c 将安装包下的文件复制到项目文件夹下,并在XCode中依次添加到项目中。添加依赖: libz.tbd libsqlite3.tbd CoreGraph...
# 背景iOS 业界研发模式多为 CocoaPods + Xcode + Git 的多仓组件化开发模型。为追求极致的研发体验、提升研发效率,对该研发模式进行了大量优化,但目前遇到了以下瓶颈,亟需突破:- pod install 时间长:编译优... 仓库仅有应用配置信息,不包含任何组件代码。ARK 仓库大小仅 2 MB,在 1 s 内可以完成仓库下载 。在 MBox 中的使用仅需几步点击操作。首先选择要开发的产品,然后勾选 ark 模式,选择开发分支,最后点击 Create 便可以...
之前曾在[iOS优化-瘦身](https://mp.weixin.qq.com/s/wDcYvea5dTq0dh0PBwRu4A)文章中提到过iOS优化将会是一个专题,今天就带来iOS优化系列的第二篇,主要介绍一下启动优化,即如何减少应用的启动时间。其实关于这块... 是苹果的动态链接器,是一个专门用来加载动态链接库的库,是开源的。在 `XNU` 内核为程序启动做好准备后,执行由内核态切换到用户态,由 `dyld` 完成后面的加载工作。`dyld` 会首先读取 `mach-o` 文件的 `Header` 和...
# 【教程】浅谈ios混淆和加固加密```混淆:针对项目代码,代码混淆通常将代码中的各种元素(变量、函数、类名等)改为无意义的名字,使得阅读的人无法通过名称猜测其用途,增大反编译者的理解难度。虽然代码混淆可... 开发人员通常需要保留原始未混淆代码用于调试。操作时机:项目打包时的IPA``````加固:针对代码加固,加固是多维度的安全防护方案,包括反破解、反逆向、防篡改等,可以防止应用被各类常见破解工具逆向,安全性要远...
你可以通过阅读密钥说明了解更多 Token 相关信息 Xcode 14.1+ iOS 11.0+ iPhone 或 iPad 真机 项目已配置有效的开发者签名 步骤 1:创建项目(可选) 本步骤为如何创建一个新项目,如集成到已有项目,请直接查看集成... 你需要填写所需要的 SDK 版本号,最新版本号参看资源获取。 objectivec platform :ios, '8.0'source 'https://github.com/CocoaPods/Specs.git'source 'https://github.com/volcengine/volcengine-specs.git'target...
前提条件Xcode 9.0 或以上版本 支持 iOS 10.0 或以上版本的 iOS 设备,暂不支持模拟器调试 请确保申请有效的Appid和License,可根据具体需要集成的SDK,进行申请。 Demo介绍运行 Demo下载Demo 切换至 Thrall_Demo 目录,执行 pod install --repo-update,并打开 Demo。 $ cd Thrall_Demo$ pod install --repo-update$ open Thrall_Demo.xcworkspaceDemo 结构请参考Thrall_Demo 的 README.md Demo 初始化视频直播、视频点播、智能...
你可以通过阅读密钥说明了解更多 Token 相关信息 Xcode 14.1+ iOS 11.0+ iPhone 或 iPad 真机 项目已配置有效的开发者签名 步骤 1:创建项目(可选) 本步骤为如何创建一个新项目,如集成到已有项目,请直接查看集成... 你需要填写所需要的 SDK 版本号,最新版本号参看资源获取。 objectivec source 'https://github.com/volcengine/volcengine-specs.git'source 'https://github.com/CocoaPods/Specs.git' platform :ios, '11.0'targ...
优化了单页应用PV的refer信息2.优化了hash路由上报的信息3.支持配置多链接或者可视化实验的遮罩层透明度4.新增了logsetting的配置下发 2023年11月29日 Android / iOS: V6.16.21.WebVIew 圈选优化 div == 0 场景下圈选2.修复了一些已知问题 2023年11月16日 Web: V5.1.71.优化了曝光埋点的上报2.新增了滑动埋点的上报3.修复内嵌H5和客户端打通后,设置属性不生效的问题4.埋点调试工具去除了url参数的限制,只需要打开enable_debug即可...