国外博客

1.Understanding Battery Usage in your Android App

Developing an android app can be a difficult and daunting task. There is so much to think about and a lot of the time battery usage is not very high on the list of things to remember. However, it is one of the most important things you need to consider.

2.Building a Kotlin project 1/2

The best way to learn a new language is to use it in a real use case. That's way this new series of posts are focused on building a proper Android project using Kotlin.

3.Building a Kotlin project 2/2

In the previous post we started a new project from scratch, and adjusted the build.gradle for the Kitten App purpose.The next steps are going to be the programming of the elements of the app.

4.Clear the app data quickly

When developing an app, you’ll surely have encountered situations when you need to clean up the data directory. Common examples include: testing some onboarding flow, an upgrade of the database, and so on.

5.MediaBrowserServiceCompat and the modern media playback app

Media apps, more so than most, benefit strongly from working with the Android system and other apps. Some things, like handling interruptions with audio focus, have been a constant since nearly the beginning of Android and are just as important now as ever.
国内博客

1.Android内存泄漏总结

对于内存泄漏,我想大家在开发中肯定都遇到过,只不过内存泄漏对我们来说并不是可见的,因为它是在堆中活动,而要想检测程序中是否有内存泄漏的产生,通常我们可以借助LeakCanary、MAT等工具来检测应用程序是否存在内存泄漏,MAT是一款强大的内存分析工具,功能繁多而复杂,而LeakCanary则是由Square开源的一款轻量第三方内存泄漏检测工具,当它检测到程序中有内存泄漏的产生时,它将以最直观的方式告诉我们该内存泄漏是由谁产生的和该内存泄漏导致谁泄漏了而不能回收,供我们复查。

2.如何设计MVP中的Presentation层

界面间的切换可以是两个Fragment、两个Activity、打开对话框、启动新Activity等等。当然切换的具体实现原理不属于这篇文章的内容,而进行切换操作则是Presentation层的职责。Presenter应该知道要做什么,而它的实现类要知道怎么完成。在这个例子中,要做的就是切换界面,完成方式就是启动新的Activity。

3.Android扫描多媒体文件剖析

这篇文章从系统源代码分析,讲述如何将程序创建的多媒体文件加入系统的媒体库,如何从媒体库删除,以及大多数程序开发者经常遇到的无法添加到媒体库的问题等。本人将通过对源代码的分析,一一解释这些问题。

4.在Android NDK中使用OpenSSL

由于Java较为容易被反编译,因此把一些重要代码放在so文件中成为了一个代价不太高的选择。虽然so文件依旧可以反编译,但对so进行逆向分析的门槛则要比分析Java字节码的门槛高出不少。很多安全相关的代码都依赖OpenSSL,然而网络上在NDK中使用OpenSSL的教程并不多见,经过一天的探索,我终于可以成功在NDK中调用OpenSSL了。

5.Android 手表设计规范【译】

为可以穿戴的Android手表设计应用与为手机和平板设计应用有很大的区别:不同设备有着不同的优势及劣势、不同的应用场景及人体工学考量。想要开始设计,我们应该对Android手表体验有个整体的认识,并且知道应用怎样融入才能改善这种体验。

6.携程App的网络性能优化实践

在2014年接手携程无线App的框架和基础研发工作之后,作者面对的首要工作就是App客户端性能优化,尤其是网络服务性能,这是所有App优化工作的重中之重。以下为正文。

7.OKHttp源码解析

Android为我们提供了两种HTTP交互的方式:HttpURLConnection 和 Apache HTTP Client,虽然两者都支持HTTPS,流的上传和下载,配置超时,IPv6和连接池,已足够满足我们各种HTTP请求的需求。但更高效的使用HTTP可以让您的应用运行更快、更节省流量。

8.Android高性能ORM数据库DBFlow入门

DBFlow,综合了 ActiveAndroid, Schematic, Ollie,Sprinkles 等库的优点。同时不是基于反射,所以性能也是非常高,效率紧跟greenDAO其后。基于注解,使用apt技术,在编译过程中生成操作类,使用方式和ActiveAndroid高度相似,使用简单。

9.Android数据绑定框架介绍

背景 数据绑定框架有很多,其实我就看过谷歌官方的数据绑定框架,官方的框架用起来的时候,觉得不是很顺手,侵入性还比较强。而且也一直纠结彷徨,从心底里质疑数据绑定框架的价值,到底给我们开发带来了什么,实用吗,可维护吗?

10.Android干净架构详解:为你的应用打造一个清爽的架构!

随着应用体积和代码数量的膨胀,Android应用的架构越来越复杂,遗留代码越来越多,接手开发、协作都变得越来越困难,有些人试图用框架、规范来解决这个问题,但为什么不从一开始就从架构上着手呢?

11.Android界面性能调优手册

界面是 Android 应用中直接影响用户体验最关键的部分。如果代码实现得不好,界面容易发生卡顿且导致应用占用大量内存。 我司这类做 ROM 的公司更不一样,预装的应用一定要非常流畅,这样给客户或用户的第一感觉就是快。又卡又慢的应用体验,会影响客户或用户对产品的信心和评价,所以不可忽视。

12.MVP 实现的 Android 基础项目架构

迄今为止,我阅读了很多有关Android软件开发中结构设计的文章。以我对他们的认识,比较好的方法是实现MVP(Model View Presenter)模式,这对Android开发者也是非常重要的。

13.Android APK终极瘦身21招

作者前不久写过一篇《APK瘦身实践》,在公司的要求下,将6.5M的Apk硬生生的减到不到4M(已开启minifyEnabled等常规压缩手段),后面他根据反馈又整理出这篇Apk瘦身指南,对Android开发者更具指导意义。
类库

1.TranslateApp

一个实现『划词翻译』功能的 Android 应用 ,可能是目前 Android 市场上翻译效率最高的一款应用。

2.greedo-layout-for-android

一个全方面的图片布局管理器

3.NotifyUtil

通知工具类

4.kotgo

是一个采用 MVP 模式进行设计的 Android 应用框架。它使用纯的 Kotlin 进行构建。

5.FPSAnimator

一个很方便的支持TextureView 和SurfaceView的动画库

6.InstrumentPanelView

高光效果的仪表盘控件

7.CountAnimationTextView

一个倒计时的TextView

8.SlidingLayout

一个支持ListView gridView 的侧滑控件

9.CenteredDrawableButton

一个可以在按钮中间设置drawable的控件



微信公众号:Android博客周刊
微   博:陆镇生_Jomeslu
邮   箱:luzhensheng72@gmail.com

版权声明:自由转载-保持署名 | 本文遵从 CC BY 4.0 协议