写点什么

Android 开发周报:Android 厂商寒冬将至、Android 内存申请分析

2016 年 7 月 19 日

  1. 《不要再给 MVP 中的 Presenter 写接口了》:几个月前 Google 发布了一个官方 MVP 示例项目,在项目中,Google 首先写一个上帝接口 BasePresenter,然后在每个功能模块里都写了协议类名为某某 Contract,在其中封装了模块下的 View 接口和 Presenter 接口。这种管理方式的好处是,将 View 和 Presenter 管理起来,强化其一一对应的关系,便于操作。不论是否以协议类的方式呈现,现在开发者喜欢让 Presenter 继承接口。而本文观点正好相反,本文的观点不一定正确,但希望能引起你对这个问题的思考。
  2. 《Android 内存申请分析》:在做优化的过程,除了关注内存的申请量以及 GC 的情况之外,我们经常需要想方法找出是那些对象占用了大量内存,以及他们是如何导致 GC 的,这意味着我们需要获取对象申请的信息(大小,类型,堆栈等),本文为我们介绍了几种获取对象申请信息的方法。
  3. 《为什么 Android 开发者应该使用 FlatBuffers 替代 JSON?》:你可能会问,既然我们已经有很标准的 JSON 以及转换库比如 GSON 和 Jackson,为什么还要使用新的工具呢?不妨先试一下 FlatBuffers,然后你就会发现它比 JSON 快得多。FlatBuffers 是一个高效的跨平台序列化类库,可以在 C++、C#、C、Go、Java、JavaScript、PHP 和 Python 中使用。是 Google 开发的,是为了应用在游戏开发,以及其他注重性能的应用上。
  4. 《Unity Android Plugin 开发指南》:本文为我们介绍了如何在 Unity 工程中使用 Android 或者 Java 的库,包括:如何在 Unity 项目中使用 Android Plugin、Unity-Android 相互调用、Unity 接口设计的最佳实践、如何构建 Unity-Android 混合项目、如何调试 Unity 和 Android 代码。本文有助于我们上手 Unity。
  5. 《安卓单元测试 (八):Junit Rule 的使用》:一个 JUnit Rule 就是一个实现了 TestRule 的类,这些类的作用类似于 @Before、@After,是用来在每个测试方法的执行前后执行一些代码的一个方法。此外,JUnit Rule 还能做一些 @Before 这些 Annotation 做不到的事情,那就是他们可以动态的获取将要运行的测试类、测试方法的信息。阅读文章,了解 Junit Rule 的更多细节。
  6. 《Google I/O 2016 笔记:APK 瘦身的正确姿势》:业务逻辑不断累积、引入的第三方 SDK 不断增加以及图片资源不变变大,APK 瘦身已经是每个 Android 应用开发者不得不考虑的问题了。坊间流传的各种瘦身方法有些切实可行,有的却流毒甚广。本文为我们总结了 2016 Google I/O 大会上提到的瘦身技术。
  7. 《Android Vector 曲折的兼容之路》:Android 5.0 发布的时候,Google 提供了 Vector 的支持。Vector Drawable 相对于普通的 Drawable 来说,好处很多,比如:可以自动进行适配、大幅减少图像的体积、使用简单,很多设计工具支持、成熟、稳定,前端已经非常广泛的进行使用了。本文详细介绍了 Vector 的兼容之路,并讲解了 Vector 的使用方法。
  8. 《深度理解 Android InstantRun 原理以及源码分析》:Instant Run 是 Android Studio2.0 以后新增的一个运行机制,能够显著减少你第二次及以后的构建和部署时间。简单通俗的解释就是,当你在 Android Studio 中改了你的代码,Instant Run 可以很快的让你看到你修改的效果。而在没有 Instant Run 之前,你的一个小小的修改,都肯能需要几十秒甚至更长的等待才能看到修改后的效果本文详细深度介绍了 Android InstantRun 原理并且结合其源码分析了实现细节。本文有助于我们扩张插件化的思路。
2016 年 7 月 19 日 19:004398
用户头像

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

关注

评论

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

数字货币钱包开发费用,区块链钱包开发优势

13530558032

干货!直观地解释和可视化每个复杂的DataFrame操作

计算机与AI

Python pandas 数据处理

架构师第一期作业(第 9 周)

Cheer

作业

程序员双十一剁手指南

数据君

腾讯云 程序员

【乘风破浪的开发者】丁一超:从AI实战营出发探索未知的AI世界

华为云开发者社区

华为 AI modelarts

数字货币交易所功能,场外OTC交易所开发公司

13530558032

覆盖全网的阿里微服务架构有多牛:K8S+实战+笔记+项目教程

马士兵老师

Java 程序员 微服务 Spring Cloud 阿里云 K8S

“3+3”看华为云FusionInsight如何引领“数据新基建”持续发展

华为云开发者社区

数据库 新基建 华为云

数字货币助力支付体系高效运行

CECBC区块链专委会

金融

关于linux操作系统中的buff/cache

程序员架构进阶

Linux cache buffer

USDT币支付系统开发搭建,区块链承兑商支付平台

13530558032

报告显示国际区块链监管呈三大趋势

CECBC区块链专委会

区块链 货币 监管

云算力挖矿模式系统开发,云算力平台搭建

13530558032

揭秘双11:前端技术体系

阿里云情报局

前端 前端进阶

不要拿区块链做挡箭牌

CECBC区块链专委会

区块链

程序员求助:腾讯面试题,64匹马8个跑道,多少轮选出最快的四匹

Java架构师迁哥

企业工作流设计原则及注意事项

力软.net/java开发平台

工作流

《精通lambda表达式:Java多核编程》.pdf

田维常

Lambda

那个小白还没搞懂内存溢出,只能用案例说给他听了

田维常

内存溢出

两句话给面试官讲清楚IOC

执墨

spring ioc 依赖倒置原则 springioc 控制反转

SQL数据库:子查询和关联子查询

正向成长

SQL子查询 SQL关联查询

Alibaba首发的《Java技术成长笔记》,渴望提升自己的程序员的必备宝典!

Java架构之路

Java 程序员 架构 面试 编程语言

「Spring Boot 2.4 新特性」一键构建Docker镜像

AI乔治

Java Docker 架构

这套JVM核心知识你要全都会,月薪还不过18K可以直接跳槽了

小Q

Java 学习 架构 面试 JVM

SQL数据库:CASE表达式

正向成长

CASE表达式

adb的常用操作命令

Yolanda_trying

即将写入MySQL源码的官方bug解决之路

数据君

MySQL

#不吐不快# IT职场里的奇葩经历

InfoQ写作平台官方

职场搞笑 活动专区 奇葩的经历

亿级大表分库分表实战总结(万字干货,实战复盘)

云流

学习 编程 架构 计算机网络

牛批!2w字的Java集合框架面试题精华集(2020最新版),赶紧收藏。

Java架构之路

Java 程序员 架构 面试 编程语言

断供,危机or契机?开源商业化or社区化?后疫情下的开源路这样走 | 大咖对话

易观大数据

Android开发周报:Android厂商寒冬将至、Android内存申请分析-InfoQ