[关闭]
@Sniper 2017-02-21T13:59:03.000000Z 字数 2034 阅读 1175

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

Android周报 Android 移动


摘要:2017年的I/O大会将于太平洋时间5月17日开始,一直持续三天时间。地点设在加州山景城的海岸露天剧场。本期周报为大家带来了AOP字节码插桩、Binder机制、动态加载、Lottie实现原理等多方面的技术干货,欢迎阅读。

新闻

  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,从顶部弹出,位于所有视图的上层。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注