字节跳动终端技术

其他

Android 视角谈 Bazel 与 Gradle 构建系统

缓存系统设计的好坏和核心调度机制同等重要,决定了构建系统的上限,一个性能好的构建系统一定在缓存方面有着优雅的设计。二者在缓存方面均下足了功夫,从缓存的角度来看无法评价二者的优劣。依赖管理系统:
2023年7月6日
其他

优先级反转那些事儿

就按上面所说的优先级来运行。如果出现了线程间同步等待的情况,则调度程序会根据情况调整线程的运行优先级。如何触发优先级反转避免机制?如果当前线程因等待某线程(线程1)上正在进行的操作(如
2022年11月23日
其他

中心化决议管理——云端分析

决议策略优化的工具链。根据工程中构建配置参数,云端分析本地插件识别出具体的决议策略,并传递到云端分析服务器并激活对应决议策略算法进行快速决议。同时,结合已有的决议优化策略和云端的优化加速机制,让
2022年9月15日
其他

深入解析Flutter下一代渲染引擎Impeller

定义的区域之外。遍历多边形的外边缘的每条边,根据每条边两侧的顶点,描边宽度以及边缘的斜率可以组装出一组模拟描边行为的三角形图元,如上图所示:一个方向上的描边是由两个相结合的三角形构成。针对不同的
2022年8月24日
其他

字节跳动DanceCC工具链系列之Swift调试性能的优化方案

13体验下非常不好,经常存在类似“断点陷入后变量面板卡顿转菊花”、“显示变量失效”等问题。而且一直存在于多个历史Xcode版本。图1:Xcode变量区显示卡顿转菊花,测试使用Xcode
其他

字节跳动 Flutter UME Kits Competition

官方周边一件;参赛须知参赛前请仔细阅读「参赛指南」,并按其“作品提交指南”的流程和“有效作品标准”的规范提交参赛作品;本次作品需要通过邮件形式提交;开发者将最终作品以压缩包以附件的形式,发送至
2022年4月13日
其他

字节跳动 Flutter UME Kits Competition 参赛指南

的地址对于存在代码相似、创意相同、功能类似的参赛作品,以提交时间为评奖依据比赛组委会将在参赛作品评选结束后通过邮件联系参赛选手,请务必保持邮箱畅通更多活动信息扫码加入字节跳动
其他

iOS15 动态链接 fixup chain 原理详解

程序运行时,将主二进制中引用外部符号的地址指向加载到内存中的外部动态库中对应符号所定义的位置,并对内部的一些数据指针所存储的地址的值进行修正;这个过程有两个核心阶段,rebase
2022年3月15日
其他

Android编译优化系列-kapt篇

编译还有很多的问题值得去优化。目前在字节内部,我们团队开发了一系列优化工具来无感知地解决此类问题来加快增量编译速度。受限于篇幅原因,这里不进行展开说明,后续会有单独的文章来阐述相关内容。3.
其他

APK修改神器:插桩工具 DexInjector

工具将dex文件转换成可方便阅读的smali语法文件,但是smali的工具对smali字节码的解析是通过语法解析,如果要插入一个新的代码进去对寄存器等操作没有办法实现结构化操作。redexredex
2022年2月17日
其他

组件发布效率提升15倍是怎么做到的——基于Gradle调度机制深度研究与优化

的调度机制做一次彻底的分析。分析之前我们先插播一段关于Task的执行时间的统计准确性问题。你真的能准确收集到Task的执行时间吗?如何去度量编译过程中某些task的耗时呢?我们一般是通过在
2021年12月28日
其他

Android插件化中资源错乱的解决方案

👆点击上方蓝字关注我们!本文介绍了Android插件化框架中,插件使用宿主资源时资源错乱的问题,以及错乱的原因、业界通用解决方案、我们提出的优化方案。本文将按照如下顺序,循序渐进地进行讲解:简单介绍Android插件化中资源部分的动态化。简单介绍Android中资源的一些基础知识、使用方式及其编译原理。介绍插件化场景下出现的资源错乱问题及业界通用的解决方案。介绍一种新的方案——免资源固定方案,用于解决资源错乱问题。单独介绍一下免资源固定方案中的一个技术点:修改apk中的资源文件。一、Android插件化中资源的动态化Android
2021年12月17日
其他

Android性能优化之Android 10+ dex2oat实践

}:表示执行权限被拒绝;scontext=u:r:``untrusted_app``:s0:c12,c257,c512,c768:表示主体的安全上下文,其中untrusted_app是source
2021年9月29日
自由知乎 自由微博
其他

应用性能前端监控,字节跳动这些年经验都在这了

Tok、飞书等多个超大规模用户量级移动App的多年沉淀和积累后的完全自研的应用性能监控产品。并拥有多个外部客户的实践,如:虎扑、作业帮、甄云科技等,为企业和开发者提供
2021年9月16日
其他

iOS 符号解析重构之路

工具通过cgo而不是命令行形式调用。方案1上线之后我们观察到在晚高峰期间单行解析pct99非常夸张,因为超时导致的解析失败越来越多,甚至有一次晚高峰期间整个服务直接夯住,登录到线上机器看到大量too
其他

Flutter 疑难杂症系列:键盘原理及常见问题解决方案

Instruments,也能帮助我们找到一些蛛丝马迹。在使用键盘过程中有一些性能相关的问题我们也在不断的探索,如果大家有好的思路欢迎提出。关于字节终端技术团队字节跳动终端技术团队(Client
2021年8月26日
其他

字节跳动开源 Android PLT hook 方案 bhook

EXIT当崩溃发生时,因为我们明白在保护的代码区间中只有“内存读”或“单个内存写”操作,因此忽略这种崩溃并不会带来任何副作用。在
2021年8月19日
其他

Flutter 疑难杂症系列:实现中文文本的垂直居中

https://zh.wikipedia.org/wiki/Em_(%E5%AD%97%E4%BD%93%E6%8E%92%E5%8D%B0%E5%AD%A6)
其他

它来了!Flutter 应用内调试工具 UME 开源啦

检查、性能工具、代码查看、日志查看等众多功能。无论是设计师、产品经理、研发工程师或质量工程师,都能直接从应用内获取有用信息,从而提升整个团队的研发、调试与验收效率。二、功能介绍2.1
2021年7月22日
其他

字节跳动安全合规检测技术之Android篇

“基于敏感调用点潜藏的漏放风险”,假设我们能够知道函数调用关系,就能从调用点关联到上层业务代码,从点到链扩展检测维度,根本上解决间接调用检测遗漏的问题。
2021年6月21日
其他

无埋点核心技术:iOS Hook 在字节的实践经验

堆栈信息重点信息是:UIWebViewwebView:decidePolicyForNavigationAction:request:frame:decisionListener:Thread
2021年5月28日