[关闭]
@Sniper 2017-04-17T09:25:23.000000Z 字数 2422 阅读 1428

Android开发周报:国内Android份额飙升至86.4%、SDK无埋点技术解析

Android周报 Android 移动


摘要:2017年2月全球移动操作系统份额出炉,国内安卓暴涨至86.4%。本期周报为大家带来了Android SDK无埋点技术、OOM分析、Android GC、辅助功能等技术干货,欢迎阅读。

新闻

  1. 《2017年2月全球移动操作系统份额:国内安卓暴涨至86.4%》:Kantar Worldpanel放出了截止2017年2月底最新的全球移动操作系统份额数据,我们可以了解到三大移动操作系统在全球各地的具体份额情况。iOS系统在中国的份额降至了自2014年7月份以来的历史最低点,从去年同期的22.1%降至13.2%。而安卓系统则迎来增长,从原来的77.1%市占率飙升至86.4%

  2. 《Android Pay增强银行间合作一次点击就能完成银行卡添加》:Android Pay同全球多家银行机构开展合作,从而让Android用户更轻松地在移动支付方案中使用你的银行卡。最新宣布合作的银行包括美国银行,新西兰银行,发现卡(Discover),波兰mBank银行和美国军人银行(USAA),如果你是这些银行的客户,那么只需要点击一个按钮,就能从移动银行应用中将这些银行卡添加到Android Pay中。

  3. 《谷歌陷入多事之秋:Nexus 6P和Android7.1.2先后出现大问题》:谷歌的手机部门最近陷入了不小的麻烦之中,其麻烦有二:法律机构Chimicles & Tikellis正在就Nexus 6P的电池和开机问题展开调查;升级Android 7.1.2正式版后,一些Pixel/Nexus手机的指纹功能瘫痪。

教程

  1. 《Android无埋点数据收集SDK关键技术》:鉴于日益强烈的精细化运营需求,网易乐得从去年开始构建大数据平台,无埋点数据收集SDK因此立项,用于向大数据平台提供全量,完整,准确的客户端数据。无埋点数据收集SDK Android端从着手,到经历重构,逐步完善到现在已经有快一年的时间了。期间从开源社区以及同行中得到了一些很有意义的技术参考,因此在这个SDK趋于完善的今天,我们也考虑将这一路在技术上的探索经历和收获分享出来。

  2. 《Android辅助功能(一)-AccessibilityEvent的分发》:目前关于辅助功能的使用的文章很多,但鲜有分析其具体实现的,本文基于Andoird 7.1.0_r7源码分析一下辅助事件是怎么分发的,只涉及事件的分发和辅助App的接收,之后有机会再讲一讲获取AccessibilityNodeInfo、进行操作等等的源码流程。

  3. 《Android OOM案例分析》:在Android(Java)开发中,基本都会遇到java.lang.OutOfMemoryError(本文简称OOM),这种错误解决起来相对于一般的Exception或者Error都要难一些,主要是由于错误产生的root cause不是很显而易见。由于没有办法能够直接拿到用户的内存dump文件,如果错误发生在线上的版本,分析起来就会更加困难。本文从一个具体的案例切入,介绍OOM分析的思路及相关工具的使用。

  4. 《Android GC原理探究》:想写一篇关于Android GC的想法来源于追查一个魅族手机图片滑动卡顿问题,由于不断的GC导致的丢帧卡顿的问题让我们想了很多方案去解决,所以就打算详细的看看内存分配和GC的原理,为什么会不断的GC,GC ALLOC和GC COCURRENT有什么区别,能不能想办法扩大堆内存减少GC的频次等等。

  5. 《有效减少Android应用的方法数》:65k限制确实是个令人不爽的事情,本文会让你知道是哪些库用了大量的方法,并该怎么减少这些库的方法数。现在的应用越来越大,方法数经常达到65k限制。本文主要介绍了如何可视化library方法数和减少方法数的方法。

  6. 《React Native性能之谜》:在PhoneGap、RubyMotion、Xamarin、Ionic一众跨平台开发工具中,React Native能够杀出一条血路,获得目前这么大的影响力,除了React社区生态圈的加持和Facebook的大力推广以外,另外一个最主要的原因就是其在开发效率和应用性能方面取得了一个比较好的平衡。不过,虽说框架提供了这个平衡能力,平衡点的选择却掌握在开发者手中,本文将从React Native的性能角度分析了如何掌握这个平衡点。

  7. 《Android新一代多渠道打包神器》:众所周知,因为国内Android应用分发市场的现状,我们在发布APP时,一般需要生成多个渠道包,上传到不同的应用市场。这些渠道包需要包含不同的渠道信息,在APP和后台交互或者数据上报时,会带上各自的渠道信息。这样,我们就能统计到每个分发市场的下载数、用户数等关键数据。本文详细介绍了ApkChannelPackage打包神器的实现原理。

  8. 《RemoteViews详细解释》:RemoteViews表示的是一个view结构,它可以在其他进程中显示。由于它在其他进程中显示,为了能够更新它的界面,RemoteViews提供了一组基础的操作用于跨进程更新它的界面。RemoteViews主要用于通知栏通知和桌面小部件的开发,通知栏通知是通过NotificationManager的notify方法来实现的;桌面小部件是通过AppWidgetProvider来实现的,它本质上是一个广播(BroadcastReceiver)。这两者的界面都是运行在SystemServer进程中(跨进程)。本文详细介绍了RemoteViews的工作原理。

开源项目

  1. SuitLines:一个小巧且高效的线性图表组件。

  2. MaterialChipsInput:这是一款可以自动提示的标签组件。

  3. expanding-collection-android:一款卡片形式的页面组件,效果类似于浏览器的多标签页,动画很赞。

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