写点什么

Android 开发周报:Android 7.1 开放下载、Tinker 源码研读

  • 2016-10-25
  • 本文字数:1651 字

    阅读完需:约 5 分钟

  1. 《Android ListView 与 RecyclerView 对比浅析–缓存机制》:RecyclerView 是谷歌官方出的一个用于大量数据展示的新控件,可以用来代替传统的 ListView,更加强大和灵活。作者最近遇到了是否要将 ListView 替换为 RecyclerView 的问题。秉承着实事求是的作风,弄清楚 RecyclerView 是否有足够的吸引力替换掉 ListView,作者从性能这一角度出发,研究 RecyclerView 和 ListView 二者的缓存机制,并得到了一些较有益的结论。
  2. 《Atlas:手淘 Native 容器化框架和思考》:在刚刚过去的云栖大会上,手淘宣布其移动容器化框架 Atlas 将于 2017 年年初开源,对这个框架,在过去团队对外部做过一些分享,外界也一直对其十分关注,到现在它终于即将开源了。本文介绍了 Atlas 的设计思路和手淘对容器化、组件化和动态化上的思考,主要内容来自阿里巴巴资深技术专家倪生华(玄黎)在 2016 杭州云栖大会上的分享。
  3. 《tinker 源码研读(一):补丁生成之 DexDiff 原理简析》:微信的热修复框架 Tinker 已经在国庆节之前开源了,成为了 github.com/Tecent 下第一个项目,刷爆了各位开发者的朋友圈。作为一个超级 APP 的 HotFix 库,Tinker 不仅值得我们 compile,更值得我们 read。Tinker 和以往的 HotFix 库思路不太一样,它更像是 APP 的增量更新,在服务器端通过差异性算法,计算出新旧 dex 之间的差异包,推送到客户端,进行合成。传统的差异性算法有 BsDiff,而 Tinker 的优秀之处就在于它自己基于 Dex 的文件格式,研发出了 DexDiff 算法。
  4. 《Android 进程绝杀技–forceStop》:话说 Android 开源系统拥有着 App 不计其数,百家争鸣,都想在这“大争之世”寻得系统存活的一席之地。然则系统资源有限,如若都割据为王,再强劲的 CPU 也会忙不过来,再庞大的内存终会消耗殆尽,再大容量的电池续航终会昙花一现。面对芸芸众生,无尽变数,系统以不变应万变,一招绝杀神技 forceStop 腾空出世,需要具有 FORCE_STOP_PACKAGES 权限,当然这个并非第 3 方 app 可以直接调用的, 否则 App 间可以相互停止对方。
  5. 《有赞 Android 客户端网络架构演进》:Android 客户端网络请求是每一个应用都不可或缺的模块,其设计的好坏直接影响应用的性能和代码稳定性、扩展性。Android 网络请求最开始官方只提供了最基础的方法,开发者必须在此基础上进行二次封装,这样就要求开发者对 Http 请求协议、缓存、JSON 转换、错误处理以及线程切换等都比较熟悉,稳定性、可扩展性和可维护性都是比较大的挑战。本文详细介绍了有赞客户端的网络架构。
  6. 《在 2016 年学 Android 是一种什么样的体验?》:转眼间 2016 年的电量已不足 20%,不禁感慨 How Time Flies!不知不觉 Android 移动开发已经走过了八年的光阴,在这八年的时间中,Android 开发从最初的简单调用系统 API,到各类框架的不断涌现,再到如今的成熟阶段,那么作为一个想在 2016 年开始学习 Android 或者重新开始学习 Android 的开发者来说,你将看到一幅什么样的光景呢?本文给出了答案。
  7. 《写给 Android 开发者的混淆使用手册》:毫无疑问,混淆是打包过程中最重要的流程之一,在没有特殊原因的情况下,所有 app 都应该开启混淆。本文由两部分构成,第一部分给出混淆的最佳实践,力求让零基础的新手都可以直接使用混淆;第二部分会介绍一下混淆的整体、自定义混淆规则的语法与实践、自定义资源保持的规则等。
  8. 《AndroidLintWatchDog Custom-Lint 自定义 Lint 检查的实现》:Android 自定义 Lint 检查能有效提升代码质量、避免人工的低级失误,同时也能规范代码。自定义 Lint 检查属于程序自动化的内容,这部分内容涉及的资料较少,但是实际意义重大,尤其是对有规模的团队而言。
  9. 《Android 是如何管理 App 内存的–Android 内存优化第二弹》:我们知道,Android 中每个 App 默认情况下是运行在一个独立进程中的,而这个独立进程正是从 Zygote 孵化出来的 VM 进程。也就是说,每个 App 是运行在独立的 VM 空间的。那么 Android 是怎么管理这些 App 的内存的呢,这些独立运行的 VM 中的内存管理又是怎样的呢?本文给出了详细的说明。
2016-10-25 19:003087
用户头像

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

关注

评论

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

Go 语言使用 MySQL 的常见故障分析和应对方法

百度Geek说

Go MySQL

quarkus+saas多租户动态数据源切换实现简单完美

weir威尔

SaaS 多租户 Quarkus 动态数据源

直播带货app源码搭建中,直播CDN的原理是什么?

开源直播系统源码

软件开发 直播带货 直播系统 app源码

Vone新闻 | 旺链科技赋能众享链网自组织管理,打造企业级联盟DAO

旺链科技

区块链 产业区块链 DAO 自组织协作

navicat定时任务无效

源字节1号

消息队列的丢失、重复与积压问题

Damon

6月月更

并购增资或将有望启动东软越通新动能?

E科讯

大数据培训 | 电商用户行为分析之订单支付实时监控

@零度

大数据 flink

想学习eTS开发?教你开发一款IQ-EQ测试应用

HarmonyOS开发者

HarmonyOS

大数据培训 | Flink如何监控恶意登录

@零度

大数据

Wallys/DR6018-S/ 802.11AX MU-MIMO OFDMA / 2* GE PORTS/WIFI 6e / BAND DUAL CONCURRENT

wallys-wifi6

使用Mycat进行MySQL单库分表

迷彩

架构 运维 mycat 分布式数据库中间件 6月月更

Angular 服务器端渲染应用一个常见的内存泄漏问题

汪子熙

typescript 前端开发 angular Spartacus 6月月更

Rancher 2.6 全新 Monitoring 快速入门

Rancher

Kubernetes k8s rancher

java培训 | Java设计模式之装饰者设计模式

@零度

JAVA开发

不止于观测|阿里云可观测套件正式发布

阿里巴巴云原生

阿里云 云原生 可观测 套件

如何用 Redis 实现一个分布式锁

Ayue、

redis 分布式锁

得物多活架构设计之路由服务设计

得物技术

架构 高可用 架构设计 双活 路由

【云舟说直播间】-数字安全专场明天下午正式上线

云计算

坚持五件事,带你走出迷茫困境!

博文视点Broadview

Kafka ETL 之后,我们将如何定义新一代实时数据集成解决方案?

tapdata

kafka ETL 数据集成 实时数据 DaaS

DevEco Device Tool 助力OpenHarmony设备开发

OpenHarmony开发者

OpenHarmony

“芯”有灵“蜥”,万人在线!龙蜥社区走进 Intel MeetUp 精彩回顾

OpenAnolis小助手

开源 直播 Meetup 龙蜥社区 走进 Intel

运行时应用自我保护(RASP):应用安全的自我修养

SEAL安全

RASP

《Java编程思想》作者Bruce Eckel新作,到底做了哪些升级?

图灵教育

Java

java程序员培训 | Java设计模式之桥接模式

@零度

设计模式 JAVA开发

攻防演练合集 | 3个阶段,4大要点,蓝队防守全流程纲要解读

青藤云安全

网络安全 网络攻防 安全服务 攻防演练

如何使用 Django Forms 创建表单?

海拥(haiyong.site)

Python django 6月月更

成熟的知识管理,应具备哪些条件?

小炮

开发增效利器—2022年VsCode插件分享

中原银行

ide vscode 插件 中原银行 降本增效

5 个关于 NFT 的技术漏洞

devpoint

区块链 以太坊 NFT 6月月更

Android开发周报:Android 7.1开放下载、Tinker源码研读_移动_郭亮_InfoQ精选文章