写点什么

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

  • 2016-07-19
  • 本文字数:1389 字

    阅读完需:约 5 分钟

  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-07-19 19:004882
用户头像

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

关注

评论

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

跟我学Python图像处理丨带你掌握傅里叶变换原理及实现

华为云开发者联盟

Python 人工智能 企业号九月金秋榜

关于 Angular 应用 tsconfig.json 中的 lib 属性

汪子熙

typescript 前端开发 angular web开发 9月月更

[SpringBoot]多环境配置,配置文件分类

十八岁讨厌编程

Java 后端开发 9月月更

物联网实践分享

彭发红

开发者有话说|如何写出更加优雅的代码

闫同学

个人成长

流程图布局在项目中的实践

相续心

自动化测试神器playwright的安装及常见问题解决

迷彩

playwright 学习记录 9月月更

VUE v-bind 数据绑定

HoneyMoose

死锁检测实现

C++后台开发

后台开发 线程 多线程 死锁 C++开发

react20道高频面试题答案总结

beifeng1996

前端 React

这些react面试题你会吗,反正我回答的不好

beifeng1996

前端 React

[SpringBoot]配置文件格式、yaml配置及读取

十八岁讨厌编程

Java 9月月更

Docker多阶段构建实战(multi-stage builds)

程序员欣宸

Docker 9月月更

js高频手写题总结

helloworld1024fd

JavaScript 前端

Struts实现登录

Struts2 9月月更

深度剖析Istio共享代理新模式Ambient Mesh

华为云开发者联盟

云计算 云原生 后端 企业号九月金秋榜

大数据调度平台Airflow(七):Airflow分布式集群搭建原因及其他扩展

Lansonli

airflow 9月月更

开发者有话说|一名普通大专学历开发者的成长

彭发红

19道高频vue面试题,顺便写一下自己的答案

bb_xiaxia1998

Vue 前端

js常见手写题总结

helloworld1024fd

JavaScript 前端

Serverless遇到 FinOps: Economical Serverless

华为云开发者联盟

云原生 后端 企业号九月金秋榜

Http轮询分为长查询和短查询总结

知识浅谈

HTTP 9月月更

探索AI技术应用场景

felix

产业落地 AI探索 API接口 模型管理

TCP协议和UDP协议详细介绍

阿柠xn

TCP 计算机网络 协议族 UDP协议 9月月更

融云员工服务台,跟“干不完”说再见

融云 RongCloud

IT职场

Code For Better 谷歌开发者之声——Google Cloud谷歌云

Fire_Shield

云原生 Google Cloud 9月月更

SpringBoot初识

十八岁讨厌编程

Java 后端开发 9月月更

前端面试经常被问的题目,自己总结了一下

loveX001

JavaScript 前端

NFTScan 与 ET.XYZ 在 NFT API 数据层面进行深度合作

NFT Research

区块链 NFT web3

关爱2700多万听障者,手语服务助力无声交流

HarmonyOS SDK

手语

工赋开发者社区 |【数智化】数字化工厂规划与建设方案

工赋开发者社区

Android开发周报:Android厂商寒冬将至、Android内存申请分析_移动_郭亮_InfoQ精选文章