OceaBase开发者大会落地上海!4月20日共同探索数据库前沿趋势!报名戳 了解详情
写点什么

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

  • 2017-04-20
  • 本文字数:1406 字

    阅读完需:约 5 分钟

  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 的工作原理。
2017-04-20 19:002964
用户头像

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

关注

评论

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

尚硅谷MyBatis新版视频教程发布

@零度

Java mybatis

灵雀云加入,龙蜥社区迎来国内领先的企业级PaaS服务商

OpenAnolis小助手

Linux 开源 云原生 PaaS

java面试jvm调优的意义_java培训

@零度

JVM JAVA开发

RocketMQ-Streams 首个版本发布,轻量级计算的新选择

阿里巴巴云原生

Linux 示例中的 apt 命令大全,建议收藏!

Ethereal

如何在Linux解压缩(打开)Gz 文件?

Ethereal

IntelliJ IDEA 在校验 PHP Debug 配置的时候提示 Xdebug 扩展没有载入

HoneyMoose

前后端分离项目,如何解决跨域问题?

沉默王二

Java 前端 后端 跨域

Go 语言快速入门指南:Go 模板介绍

宇宙之一粟

Go 语言 2月月更

外包学生管理系统架构设计文档

风中奇缘

架构实战课 「架构实战营」

Logo小变动,心境大不同,SVG矢量动画格式网站Logo图片制作与实践教程(Python3)

刘悦的技术博客

前端 动画 SVG Python3 svg图

安全领域权限模型

alibeer

如果写作平台不叫写作平台,他应该叫……?

InfoQ写作社区官方

写作平台 创意 话题讨论 热门活动

一句话告诉您什么是运维?以及如何运维才能事半功倍?

行云管家

运维 IT运维 自动化运维

阿里巴巴的Java开发手册(黄山版)来了

翊君

Java 阿里巴巴面经总结

基于CC2530设计的自动晾衣杆

DS小龙哥

2月月更

如何在 Vue 中导出数据至 Excel 表格 - 卡拉云

蒋川

Vue Vue 3 vue admin

IntelliJ IDEA Ultimate 配置 PHP 拦截器

HoneyMoose

数据平台与Flink任务运行原理介绍

云智慧AIOps社区

redis 云计算 大数据 kafka Flink 平台

重新理解“无容灾不上云”:应用多活将成为云原生容灾新趋势

阿里巴巴云原生

阿里云 开源 云原生

绿色数据中心“东数西算”全面启动!八大枢纽十大集群 - 涉及高性能计算,数据集群,水冷散热

蓝海大脑GPU

Linux基础操作:如何在 Linux 中复制文件夹?

Ethereal

学生管理系统详细架构设计文档

晨亮

「架构实战营」

IntelliJ IDEA 在校验 PHP Debug 配置的时候提示 URL 无法访问

HoneyMoose

架构学习【03】——外包学生管理系统的架构文档

tiger

架构实战营

uni-app技术分享| uni-app常见问题(一)

anyRTC开发者

uni-app 音视频 WebRTC 移动开发 实时通讯

web前端开发nodejs基本原理_前端培训

@零度

node.js 前端开发

Linux系统数据备份不再头疼,Rdiff-backup来帮忙!

Ethereal

IntelliJ IDEA Ultimate 配置 PHP 拦截器中 Xdebug 扩展应该怎么填

HoneyMoose

外包学生管理系统架构设计文档

五月雨

架构实战营 「架构实战营」

你才二十几岁呀,怎么眼里没有光了呢?

架构精进之路

随笔 日常感悟 2月日更

Android开发周报:国内安卓份额飙升至86.4%、SDK无埋点技术解析_Android/iOS_郭亮_InfoQ精选文章