写点什么

Android 开发周报:2017 I/O 大会时间公布、AOP 之字节码插桩详解

2017 年 2 月 24 日

新闻

  1. 《2017 谷歌 I/O 大会时间正式公布:2 月 22 日开始报名》:在微软刚刚开启了今年的 Build 2017 大会的参会注册之后,另一场开发者盛会也即将开始预热。谷歌今天正式公布,2017 年的 I/O 大会将于太平洋时间 5 月 17 日开始,一直持续三天时间。地点设在加州山景城的海岸露天剧场。
  2. 《2016 移动应用质量大数据报告》:2016 年,在“互联网 +”战略的推动下,移动互联网与越来越多传统行业的结合更加紧密,用户使用移动互联网的工作场景、生活场景、消费场景都在悄然发生着改变, 移动互联网产品在智能硬件、医疗、汽车、旅游、教育等市场也都在不断探索新的可能性。本文是来自腾讯的 2016 年度 Android & iOS 移动应用质量大数据报告。
  3. 《谷歌高管暗示 Android 8.0 或命名奥利奥,5 月 17 日发布》:2 月 21 号消息,之前就有消息称在今年的谷歌 I/O 开发者大会上,Android 8.0 将作为焦点亮相。随着大会的临近,Android8.0 更多信息遭到曝光。昨日,Android 业务副总裁 Hiroshi Lockheimer 在推特晒出带有奥利奥蛋糕的图片,似乎暗示 Android 8.0 将要命名为“奥利奥”。

教程

  1. 《Android AOP 之字节码插桩详解》:随着流量红利时代过去,精细化运营时代的开始,网易乐得开始构建自己的大数据平台。为了实现非侵入的,全量的数据采集,AOP 成了关键,数据收集 SDK 探索和实现了一种 Android 上 AOP 的方式。本篇文章基于《网易乐得无埋点数据收集 SDK》总结而成,关于网易乐得无埋点数据采集 SDK 的功能介绍以及技术总结后续会有文章进行阐述,本篇单讲 SDK 中用到的 Android 端 AOP 的实现。
  2. 《理解 Android Binder 机制 (2/3):C++ 层》:Binder 的实现是比较复杂的,想要完全弄明白是怎么一回事,并不是一件容易的事情。这里面牵涉到好几个层次,每一层都有一些模块和机制需要理解。这部分内容作者预计会分为三篇文章来讲解。第一篇对整个 Binder 机制做了一个架构性的讲解,本文是第二篇,讲解了 Binder Framework C++ 部分的逻辑。
  3. 《Android 触摸事件分发那些事》:在 Android 开发中,经常需要自定义 View。自定义 View 大概可以分为两个步骤:绘制外观和处理触摸事件。处理触摸事件需要知道触摸事件的分发流程,本文将带着大家详细地了解触摸事件分发流程,以及在触摸事件分发流程中扮演重要角色的方法如:dispatchTouchEvent、onInterceptTouchEvent、onTouchEvent 的详细讲解。
  4. 《Android 动态加载简单易懂的介绍方式》:使用动态加载技术,可以达到让用户不用重新安装 APK 就能升级应用的功能(特别是 SDK 项目),这样一来不但可以大大提高应用新版本的覆盖率,也减少了服务器对旧版本接口兼容的压力,同时也可以快速修复一些线上的 BUG。本文从动态加载的定义、类型、类加载器 ClassLoader 和 dex 文件、代理 Activity 模式等多方面详细介绍了动态加载的知识,作者对动态加载理解的很透彻,推荐阅读。
  5. 《从json 文件到炫酷动画-Lottie 实现思路和源码分析》 Lottie 是最近 Airbnb 开源的动画项目,支持 Android、iOS、ReactNaitve 三个平台,相关背景介绍可以参考这篇文章 Airbnb 开源炫酷动画库 Lottie(译)-看看 Airbnb 的工程师怎么说。本文主要分析了 Lottie 是如何把 json 文件转为动画的思路和源码实现。文章首先介绍了 Android 版本 Lottie 的基本使用,然后分析把 json 文件映射到动画的实现思路,最后分析 Lottie 的源码实现.

开源项目

  1. Cockroach :Android 中虽然可以通过设置 Thread.setDefaultUncaughtExceptionHandler 来捕获所有线程的异常,但主线程抛出异常时仍旧会导致 Activity 闪退,App 进程重启。使用 Cockroach 后就可以保证不管怎样抛异常 Activity 都不会闪退,App 进程也不会重启。
  2. routerSDK :这是一款小而美的路由框架。使用 routerSDK,可以通过网页动态添加自定义参数启动应用,当然也可以实现通过 url 的方式在 App 内进行页面跳转。对于我们进行模块化或组件化开发很有参考价值。
  3. Zoomy :这是一款支持列表中图片拖拽、手势放大的开源库。
  4. Alerter :一款非常漂亮的自定义 Alert View,从顶部弹出,位于所有视图的上层。

感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017 年 2 月 24 日 18:002686
用户头像

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

关注

评论

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

原创 | TDD工具集:JUnit、AssertJ和Mockito (十八)编写测试-测试执行顺序\嵌套的测试

编程道与术

Java 编程 TDD 单元测试 JUnit

9种 分布式ID生成方案,我替你整理好了

程序员内点事

Java MySQL 分布式

从SDL到DevSecOps:始终贯穿开发生命周期的安全

Fooying

DevOps SDL DevSecOps 安全开发 软件开发生命周期

观察者模式——窥探JDK和Spring中的设计模式

海星

spring jdk 设计模式 Java 面试 Java 25 周年

实时更新:计算机编程语言排行榜—TIOBE世界编程语言排行榜(2020年6月份最新版)

ATGU:阿宝哥

createRef、useRef、useMemo对比分析和应用场景

费马

React Hooks useRef useMemo createRef

《Oracle Java SE编程自学与面试指南》最佳学习路线图(2020最新版)

ATGU:阿宝哥

C#和TS的范型实例化

猫定谔的靴

C# typescript 泛型

为什么你在群里的提的技术问题没人回答?

古时的风筝

程序员 提问的艺术

Elasticsearch-Base

lee

elasticsearch search 搜索

CDN百科第三讲 | 如果用了云服务器,还需要做CDN加速吗?

阿里云Edge Plus

CDN

人人都能看懂的 6 种限流实现方案!(纯干货)

王磊

Java 「Java 25周年」 Java 25 周年

架构师训练营 - Lesson Week 1

brave heart

极客大学架构师训练营

装饰模式——看JDK和Spring是如何杜绝继承滥用的

海星

Java spring jdk 设计模式 Java 面试

Java技术奇迹

ATGU:阿宝哥

27岁了,程序员写给自己的一封信

学习Java的小姐姐

程序员 生活 总结 程序媛 职场回顾

Vue&SpringBoot前后端项目分离构建

夏悸

Spring Boot Vue 前端架构

cpu分析利器 — async-profiler

小楼

Java cpu profiler

PlantUML 的介绍和使用

Puran

UML PlantUML

分布式系统技术:存储之数据库

奈学教育

分布式

分布式场景之刚性事务-2PC详解

奈学教育

分布式 2PC

绝对坦诚:打造团队自我进化能力的最佳姿势

伴鱼技术团队

团队管理 企业文化 团队协作 技术管理 文化

Dubbo Cluster集群那点你不知道的事。

why技术

源码 面试 dubbo 集群容错

厉害了,SpaceX-API 开源了

非著名程序员

GitHub 程序员 开源项目

程序员未来会成为非常内卷的职业?

非著名程序员

程序员 程序人生 职业 职业规划

《龙教授私享会职场沟通心法》最佳学习路线(2020最新版)

ATGU:阿宝哥

前端开发必备工具箱

LeanCloud

CSS 性能优化 前端 vscode 工具

读《平凡的世界》

YoungZY

读书

RUST IN BLOCKCHAIN 五月简报

Aimee 阿敏

rust crypto blockchain

ChaosBlade:从零开始的混沌工程(一)

郭旭东

云原生 混沌工程

面试官为什么喜欢拿 Kafka 考验求职者

奈学教育

kafka

Android开发周报:2017 I/O大会时间公布、AOP之字节码插桩详解-InfoQ