Android 内存管理机制

内存分为以下几种 前台进程 目前屏幕上正在显示的进程和一些系统进程。举个例子:Dialer Storage, Google Search 等系统进程就是前台进程;再举例来说,当你运行一个程序,如浏览器,当浏览器界面在前 可见进程 就是不在前台,但是用户依然可见的进程,例如 widget ,输入法,都属于可见进程,部分进程虽然不在前台,但与我们的使用也密切相关,我们也不希望它们被终 次要进程 目前正在运行的一些服务,(主要服务,如拨号等,是不可能被进程管理终止的)...

阅读更多

扫盲系列 - Retrofit 基本用法

简介 Retrofit 是 Square 公司开发的一款针对 Android 网络请求的框架,对网络认证 REST API 进行了很好对支持此,网络请求的本质是 OkHttp 完成的, Retrofit 只是进负责网络请求接口的封装 基于 OkHttp 的封装, 使用面向接口的方式进行网络请求, 利用动态生成的代理类封装了网络接口请求的底层, 利用注解来方便拼装请求参数(比如 headers 或者 params ,就是通过注解,然后拼接到网络请求...

阅读更多

Linux 卸载和安装 Atom

之前在 Linux 上一直使用的是 Sublime ,可是不知道为啥,最近一直提示我要升级,而且最可恼的是,使用 Sublime 打开 txt 文件,背景竟然是白色的,网上查了半天,也没找到解决方案,解决不了,哥不用了呗, Atom 之前都听说过,而且也装的有,只是觉得他打开太慢了,所以就一直没用,现在重新玩 Atom 吧,可是我安装的版本比较老,是1.13版本,可是最新的版本却是1.25.0 了,那就想办法更新吧,竟然没找到更新按钮,直接卸载重装吧。 卸载At...

阅读更多

Window 基本概念

Window 基本概念 抽象类,具体实现类PhoneWindow 通过 WindowManager 可以创建,具体实现是 WindowManagerService 中 WindowManager和 WindowManagerService 的交互是 IPC 过程 Android 所有的视图都是通过 Window 来呈现的,不管是 Activity , Dialog ,还是 Toast ,他们的视图都是附件在 Window 上的,Window是 V...

阅读更多

Android 内存泄漏总结

内存泄露优化 分为两个方面 开发过程中避免写出有内存泄露的代码 通过分析工具比如 MAT 来找出潜在的内存泄露继而解决 常见的内存泄漏 线程造成的内存泄漏 public class ThreadActivity extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ...

阅读更多

Bitmap 的加载和 Cache 处理

Bitmap 高效加载 核心思想:采用BitmapFactory.Options 来加载所需要的尺寸的图片,一般都是缩放图片,即用到了 inSmapleSize 参数 将BitmapFactory.Options的inJustDecodeBounds=true,并加载图片 从BitmapFactory.Options中取出图片的原始宽高信息, 采用采样率的规则并结合目标 View 的所需要大小计算出采样率inSampleSize BitmapFa...

阅读更多

AsyncTaks , HandlerThread , IntentService 小结

线程是操作系统调度的最小单元,又是一种受限制的系统资源,即线程不可能无限次地生产,并且线程的创建和消耗都有相应的开销,当系统中存在大量的线程是,系统会通过时间片轮转的方式调度每个线程,分为两种 主线程: 处理和界面相关的事情 子线程:用于好事的操作 如果线程中频繁创建和消耗线程,这种做法不是很高效,可以采用线程池,一个线程池会缓存一定数量的线程,通过线程池可以避免频繁创建和消耗线程所带来的系统开销。主要通过 Executor 来派生特定类型的线程池。...

阅读更多

Android IPC 简介

IPC IPC :Inter_Process Communication的缩写,含义进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程。 线程:CPU调度的最小单位, 进程:一般只一个执行单元,在 PC 和移动设备中指一个程序或者应用,一个进程可以有多个线程, Android 中主线程也叫 UI 线程, UI 线程中不能执行耗时操作,不然会引起 ANR ,耗时操作需要使用线程 Android中最特色的进程间通信方式就是 Binder ,通过...

阅读更多