写点什么

Android 开发周报:诺基亚手机归来、Lint 代码优化解析

  • 2017-01-11
  • 本文字数:1179 字

    阅读完需:约 4 分钟

  1. 《沪江学习 Android 端重构实践》:对于大的架构重构,相信每个公司都很谨慎。沪江学习的原则是将重构融合在每次迭代中,逐步优化代码的结构。这次针对整个应用的架构的调整背景是,公司移动开发部门的人数和项目越来越多,当初设计的移动端的架构让项目的依赖关系越来越复杂,维护成本也越来越高。刚好赶上公司产品的特别需求,作者的团队决定梳理并优化一下整个项目结构。在实施过程中,依然坚持将整个重构的过程融合在每个迭代中,逐步完成一次大的架构升级。
  2. 《Gradle 的 Build Scans 是什么功能?》:2016 年 8 月份,Gradle 团队发布了 Gradle 3.0 版本,同时,引入了 Gradle 云服务(Gradle Cloud Services)。该服务“通过为 Gradle 构建工具增加新功能,并从新的角度分析你或你团队项目构建的过程,来提升自动化构建的效率和生产力”。其中第一个提供的云服务是 Build Scans 功能,该功能为免费功能。
  3. 《Input 系统—ANR 原理分析》:当 input 事件处理得慢就会触发 ANR,那 ANR 内部原理是什么,哪些场景会产生 ANR 呢。“工欲善其事必先利其器”,为了理解 input ANR 原理,作者通已经写过几篇文章疏通了整个 input 框架的处理流程,前期的文章都是为了这篇而做铺垫。阅读文章,了解 ANR 触发原理以及触发场景。
  4. 《Android 上如何实现矩形区域截屏》:对屏幕进行截屏并裁剪有两种方式:早截图和晚截图。早截图,就是先截取全屏,再让用户对截取到的图片进行修改;与之相对的,晚截图,就是先让用户在屏幕上划好区域,再进行截图和裁剪。其实两者并没有什么太大的区别,本文详细介绍了实现晚截图的方法。
  5. 《Jack & Jill,Android 新的编译工具链》:在 2016 年随着 Android N 的发布,Google 同时发布了新的编译工具链称之为 Jack 和 Jill。Jack 全名为 Java Android Compiler Kit,Jill 则是 Jack Intermediate Library Linker。Jack 主要负责将 Java 代码直接编译为 Dalvik 字节码等工作,Jill 则是对.class 文件做处理,生成.jack 文件再交由 Jack 处理。本文对 Jack、Jill 进行了简单介绍。
  6. 《Android 性能优化:使用 Lint 优化代码、去除多余资源》:Lint 是 Android Studio 提供的代码扫描分析工具,它可以帮助我们发现代码结构和质量问题,同时提供一些解决方案,而且这个过程不需要我们手写测试用例。Lint 会根据预先配置的检测标准检查 Android 项目的源文件,发现潜在的 bug 或者可以优化的地方。Lint 就像是一个洁癖患者,虽然可以让我们代码干净许多,但是如果真要把它提示的全解决,恐怕需要很大的工作量。通过本文,大家能够更加了解 Lint 的工作方式及其使用方法。
  7. 《一种视频预加载的方案》:视频的预加载是提高用户体验的重要因素。预加载成为网络视频播放不可或缺的一个技术环节。预加载的形式有:边存边播和代理服务器预下载。两者各有优缺点,本文就预加载技术进行了详细的介绍,对做视频开发的同学会有帮助。
2017-01-11 18:004393
用户头像

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

关注

评论

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

【LeetCode】重复的DNA序列Java题解

Albert

算法 LeetCode 10月月更

源码 | 为金融场景而生的数据类型:Numeric

RadonDB

数据库 postgresql

Vue进阶(幺贰柒):插槽详解

No Silver Bullet

Vue 插槽 10月月更

从头开始(概率)学HMM:精讲第三课-概率计算问题

herosunly

AI 引航计划 内容合集

自定义Vue脚手架模板之:Vue-Cli源码分析

Brave

源码 vue cli 10月月更

从头开始(概率)学HMM:精讲第五课-EM算法

herosunly

AI 引航计划 内容合集

保姆级人工智能学习成长路径

herosunly

AI 引航计划 内容合集

TensorFlow by GoogleCNN识别猫和狗, 过拟合优化 易筋 ARTS 打卡 Week 70

John(易筋)

ARTS 打卡计划

【Flutter 专题】35 图解自定义 View 之 Canvas (三)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 10月月更

智慧火电扭转传统运作模式,3D可视化助力双碳政策疾行

一只数据鲸鱼

数据可视化 智慧能源 火力发电 智慧火电 火电厂

决策树——从原理走向实战

cv君

AI 引航计划

OpenKruise 如何实现应用的可用性防护?

阿里巴巴云原生

阿里云 开源 云原生 OpenKruise

Interrupted Exception异常可能没你想的那么简单!

华为云开发者联盟

线程 JVM 高并发 并发 java

mysql cpu占用超过100%

hasWhere

定制个机器人帮你和Ta聊天

万俊峰Kevin

golang chatbot 聊天机器人 微信聊天

为了减少代码复杂度,我将if-else升级为面向状态编程

华为云开发者联盟

编程 复杂度 面向状态编程 if-else

VSCode设置Python的unittest测试

陈磊@Criss

【布隆过滤】大数据+查重过滤+爬虫领域精选算法

cv君

AI 引航计划

仁兄,可曾听闻OpenVINO

cv君

AI 引航计划

010云原生之可观测架构模式

穿过生命散发芬芳

云原生 10月月更

Form Schema 定义详解

全象云低代码

大前端 低代码平台 JSON Schema

何时适合进行自动化测试?(上)

禅道项目管理

自动化测试

基于深度学习的医学图像分割(一)

cv君

AI 引航计划

netty系列之:使用netty搭建websocket客户端

程序那些事

Java Netty websocket 程序那些事

disruptor在数据同步场景下的应用实战

编程 架构 面试 后端

【设计模式】第一篇 - 组合模式

Brave

组合模式 10月月更

架构实战营作业 -- 模块四

冬瓜茶

业界首个机密计算容器运行时—Inclavare Containers正式进入CNCF!

阿里巴巴云原生

阿里云 容器 云原生

第 12 章 -《Linux 一学就会》-重定向和文件的查找

学神来啦

云计算 Linux 运维 linux学习

🐬【MySQL技术专题】该换换你的数据库版本了,让我们一同迎接8.0的到来哦!(初探篇)

码界西柚

MySQL 运维 MySQL8.0 MySQL 数据库 10月月更

从头开始(概率)学HMM:精讲第四课-预测问题(维特比算法)

herosunly

AI 引航计划 内容合集

Android开发周报:诺基亚手机归来、Lint代码优化解析_移动_郭亮_InfoQ精选文章