速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

Android 开发周报:微信模块化重构实践、滴滴插件化项目开源

  • 2017-07-13
  • 本文字数:1543 字

    阅读完需:约 5 分钟

  1. 《微信 Android 模块化架构重构实践》:随着代码膨胀,一些问题开始突显出来。基础工程一直处于不断膨胀的状态,同时主工程也在不断变大。同时基础工程存在中心化问题,许多业务 Storage 类被附着在一个核心类上面,久而久之这个类已经没法看了。此外当初为了平滑切换到 gradle 避免结构变化太大以及太多 module,我们将所有工程都对接到一个 module 上。缺少了编译上的隔离,模块间的代码边界出现一些劣化。虽然紧接着开发了工具来限制模块间的错误依赖,但这段时间里的影响已经产生。在上面各种问题之下,许多模块已经称不上“独立”了。所以当我们重新审视代码架构时,以前良好模块化的架构设计已经逐渐变了样。因此,微信团队决定重构。
  2. 《滴滴插件化项目VirtualAPK 开源》:滴滴团队在 2016 年开始研究插件化方面的技术,经过半年的开发、测试、适配和线上验证,目前推出了一款比较完善的插件化框架: VirtualAPK 。之所以现在推出来,是因为 VirtualAPK 在内部已经得到了很好的验证,在迭代过程中不断地做机型适配和细节特性的支持,目前已经达到一个非常稳定的状况,足以支撑滴滴部分乃至全部业务的动态发版需求。目前 VirtualAPK 应用于滴滴乘客端和优步中国 APP 中,大家可以去体验。
  3. 《WebView 安全性的新功能》:应用程序中对于外部和不信任内容的处理经常是重要的功能之一。新闻阅读器显示头条新闻文章、购物应用展示销售物品的目录。作为处理不信任内容而带来的相关风险是一个攻击者能够损害您的应用程序主要的方式之一,即传递给你错误格式的内容。
  4. 《GIF 简述及其在 QQ 音乐的应用》:GIF(Graphics Interchange Format) 是 CompuServe 公司在 1987 年开发的图像文件格式,原义是图像互换格式。GIF 是一种基于 LZW 算法的连续色调的无损压缩格式,其压缩率一般在 50% 左右,它不属于任何应用程序。本文详细介绍了 GIF 的知识点。
  5. 《深入理解 Android 控件》:本篇文章主要通过源码讲述 Android 控件系统,包括输入事件是如何产生的, View 是如何绘制的,输入事件是如何传递给 View 的,Window token 与 type 之间的联系等。整个系统比较复杂,每个部分只能点到为止,有兴趣可以继续深入,主要是让读者对 Android 控件系统有一个大体的认识。
  6. 《Android 上的 Notification》:Notification 是自 Android 发布以来就有的 API,也是应用程序中最常用的功能的之一,开发者对其应当是相当的熟悉了。在 Android 近几年的版本更新中,几乎每个版本都会对系统通知界面,以及相关 API 做一些的改变。这些改变使得开发者可以更好的控制应用程序的通知样式,同时也使得通知功能更易于用户使用。本文详细讲解了 Notification 方面的知识,推荐大家阅读。
  7. 《Android NDK 开发扫盲及最新 CMake 的编译使用》:本文解释了 JNI、NDK, 以及分别和 Android 开发、c/c++ 开发的配合。并且在解释过程中对 Android.mk、Application.mk、ndk-build、CMake、CMakeList 这些常见名词进行扫盲。本文旨在简介 Android 中 NDK 是什么以及重点讲解最新 Android Studio 编译工具 CMake 的使用,对于入门 NDK 开发很有帮助。
  8. 《微信移动数据库组件 WCDB(四) — Android 特性篇》:微信的移动端数据库组件 WCDB 已经正式开源了,有关注的小伙伴可能已经用上了。之前已经发过几篇 iOS 和修复的文章,Android 由于接口跟系统几乎一样,相信大家都比较熟悉,不熟悉用法也可以到 Android Developer 官网看一下。但是,我们也有一些特色功能和优化大家可能不容易注意到, 本文为我们进行了详细介绍。
  9. Android 平台 Native 代码的崩溃捕获机制及实现》:在 Android 平台,native crash 一直是 crash 里的大头。native crash 具有上下文不全、出错信息模糊、难以捕捉等特点,比 java crash 更难修复。所以一个稳定、可靠的异常处理组件显得尤为关键。
2017-07-13 19:004217
用户头像

发布了 121 篇内容, 共 45.8 次阅读, 收获喜欢 6 次。

关注

评论

发布
暂无评论
发现更多内容

SMI 与 Gateway API 的 GAMMA 倡议意味着什么?

张晓辉

Kubernetes 服务网格 SMI

设计消息队列存储消息数据的 MySQL 表格

爱晒太阳的大白

走进Redis,让你重新认识redis。绝不是表面

派大星

签约计划第三季

Moonbeam创始人解读多链新概念Connected Contract

One Block Community

区块链

浅谈非 EVM 公链的可能性: 兼容多类型虚拟机是否是区块链未来?

One Block Community

区块链

数据质量提升

奔向架构师

数据质量 7月月更

上天入地Hadoop——使用高性能分布式技术完成大数据处理任务

程序猿阿宇

大数据 架构 Java 面试 java程序员 编程、

太牛了,百度这份开发手册几乎涵盖了Spring Cloud所有操作

程序猿阿宇

架构 java程序员 java面试 秋招 程序员‘

CMake库搜索函数居然不搜索LD_LIBRARY_PATH

华为云开发者联盟

后端 开发

只分享这一次!阿里软件架构师深入底层手写JDK源码

程序猿阿宇

架构 Java 面试 大厂技能 后端技术 秋招

真香!180页100+题15W+字解析的《Java高级面试指南》,果断收下

程序员啊叶

Java 编程 程序员 架构 java面试

openim支持十万超级大群

Geek_1ef48b

DTSE Tech Talk丨第2期:1小时深度解读SaaS应用系统设计

华为云开发者联盟

云计算 后端 SaaS

华为云数据治理生产线DataArts,让“数据'慧'说话”

华为云开发者联盟

云计算 华为云

首发!阿里技术大牛最新耗时半个月整理出最全MySQL性能优化和高可用架构技术宝典,直接封神!

了不起的程序猿

MySQL 数据库 程序员 性能优化 JAV A

六面蚂蚁金服,唬住了面试官要了30K;其实Java面试也没那么难

程序知音

Java 程序员 后端技术 秋招 Java面试八股文

我给大家免费公开五份阿里Java架构师学习手册!助力金九银十

程序猿阿宇

架构 Java 面试 大厂面试 大厂技能 秋招

备战金九银十,两份JAVA面试题2022最新整合版,祝你脱颖而出

王小凡

Java MySQL spring 面试 springboot

HarmonyOS分布式协同演奏技术实现路线(Java)

程序员啊叶

Java 编程 程序员 架构 java面试

京东发布这份SpringBoot实战手册带你从0手动搭建企业级商城项目

程序猿阿宇

程序员 面试 java程序员 Spring Boot CLI 秋招

深入浅出边缘云 | 3. 资源配置

俞凡

架构 边缘计算 网络 深入浅出边缘云

大厂面试突击必备:“网络编程”高频八连击,扛得住吗?

程序员啊叶

Java 编程 程序员 架构 java面试

阿里内网最新发布“M8”级Java面试笔记,助力金九银十

程序员啊叶

Java 编程 程序员 架构 java面试

大家都在用的plm项目管理软件有哪些

爱吃小舅的鱼

项目管理

难道Redis真的变慢了吗?

程序员啊叶

Java 编程 程序员 架构 java面试

加密生活,Web3 项目合伙人的一天

TinTinLand

区块链

Snowflake vs. Redshift的2022战报:两个数据平台谁更适合你?

雨果

使用 Solidity 和 Node.js 构建简单的区块链预言机

devpoint

区块链 Node 预言机 7月月更

腾讯被裁,转头去字节!Java后端核心面试题在手,怎能进不去大厂

程序员啊叶

Java 编程 程序员 架构 java面试

SocialFi 何以成就 Web3 去中心化社交未来

One Block Community

区块链

SpringBoot日志收集-Aop方式-存进数据库

宁在春

aop springboot 7月月更

Android开发周报:微信模块化重构实践、滴滴插件化项目开源_Android/iOS_郭亮_InfoQ精选文章