本文介绍了 Android 插件化框架中,插件使用宿主资源时资源错乱的问题,以及错乱的原因、业界通用解决方案、我们提出的优化方案。 本文将按照如下顺序,循序渐进地进行讲解: 简单介绍 Android 插件化中资源部分的动态化。 简单介绍 Android 中的资源的一些基础知识、使用方式及其编译原理。 介绍插件化场景下出现的资源错乱问题及业界通用的解决方案。 介绍一种新的方案——免资源固定方案,用于解决资源错乱问题。 单独介绍一下免资源固定方案中的一个技术点:修改 apk 中的资源文件。
公司发展到一定程度,随着业务分支不断变多,B端C端的项目也随之增多,由于历史原因可能产生新老技术栈(vue/react)共存的情况,这既不利于组件物料的抽离统一(一类通用组件需适配多套技术栈),也增大了开发者跨项目开发的适应成本。因此技术栈收敛是提升前端平台体系开发效率重要的一环。 提到技术栈迁移,我们首先想到的是微前端方案,在隔离性上来说,微前端确实很好的方案,但是对于一些复杂核心模块,往往需要较长的周期迁移,并且伴随着该模块的不断迭代,使得整体项目的迁移进度逐步拉长。最终核心痛点可能还是没有完全解决。 基于以上的背景,我们需要解决两个问题: 更丝滑的技术栈迁移:不仅是新页面,旧有页面的需求也能用react开发,做到代码块级迁移。 跨技术栈开发:MF组件化开发,需要将react组件转化为vue组件以实现在同一界面嵌入react组件。
BitSail是字节跳动开源数据集成引擎,支持多种异构数据源间的数据同步,并提供离线、实时、全量、增量场景下全域数据集成解决方案,目前支撑了字节内部和火山引擎多个客户的数据集成需求。经过字节跳动各大业务线海量数据的考验,在性能、稳定性上得到较好验证。本篇将围绕字节跳动开源数据集成引擎BitSail的演进历程与能力解析展开分享。
移动互联网进入存量时代,随着人口红利减退,充分盘活、经营现有流量便成为了各行各业全新的机遇与挑战。各大公司都在内卷发力,对 App 包大小、启动速度、性能做持续优化。 App 包体积和用户转换率成负相关,包体积越小、用户下载时长越短,用户转换率越高。而随着国内用户的增量见顶,越来越多的应用选择出海,开发对应的海外版,Google Play 应用市场目前强制要求超过 100MB 的应用只能使用 AAB 扩展文件方式上传,Google Play 会为我们的应用托管 AAB 扩展文件,进行自定义分发和动态交付。
容器服务 TKE、容器镜像服务 TCR、对象存储 COS 等等...这些产品可以很好地降低企业云原生入门门槛。 Zadig 作为云原生持续交付平台,支持多云架构交付,对腾讯云基础设施的兼容和适配性也极其友好。 本文中我们将演示在腾讯云上安装 Zadig、使用 Zadig,以及 Zadig 是如何支持腾讯云全家桶进行微服务的持续交付,助力企业以更优雅的姿势快速走上云原生交付之路。
通常情况下移动端APP由于受到设备性能所限一般较少有场景会处理超量数据,更多的是将复杂数据处理交付给服务端。本质上降低终端强数据处理是很有必要的,降低CPU使用率、减少内存抖动可以大幅提升APP使用体验。但是有时移动端也不得不处理超量数据,大麦选座就是这样一个强数据处理场景。
React 最新提出了一个叫 use 的 Hook,用于在客户端消费 Promise,而 use 和其他 Hook 不同之处在于,它可以在条件语句、block 和循环里使用。除 Promise 之外,use 未来还可能用于消费 Context、store、observable 等。 与之对应的是,在服务端组件中则支持使用 async/await。这个提案本身并不是一个完整的数据获取解决方案,因为它没有解决缓存问题。wait 和 use 是用于读取 promise 异步结果的原语,后续会引入一个名为 cache 的 API 来帮助缓存数据。
本文从严选品牌的视角分享2B系统架构设计上的一些挑战和实践,希望在2B领域的一些架构思考和方法论能够引起更多的探讨和共鸣。本文内容涉及供应链、物流、商品、客售等相关系统的一些案例。