07 2018 档案
摘要:源码下载地址在文章末尾 1 启动的方式 启动分为两种方式: 1)冷启动:当直接从桌面上直接启动,同时后台没有该进程的缓存,这个时候系统就需要重新创建一个新的进程并且分配各种资源。 2)热启动:该app后台有该进程的缓存,这时候启动的进程就属于热启动。 热启动不需要重新分配进程,也不会Applicat
阅读全文
摘要:1.Bitmap的加载 图片存在的几种形式:File、Stream、Bitmap内存的形式 常用的三个方法:最后都是调用的是decodeStream 【源码】BitmapFactory.java 情况加载:如果是Assets目录下的资源(AssetManager.AssetInputStream)则
阅读全文
摘要:【1】开发api 国内资源:https://developer.android.google.cn/reference/packages
阅读全文
摘要:1.手机电量消耗的基本认识 最耗电的应用一般有:屏幕保持唤醒状态、使用蜂窝式无线数据交换(3G4G),GPS定位等。 在打开屏幕,所有要使用CPU/GPU工作的动作都会唤醒屏幕,都会消耗电量。与应用程序唤醒设备的情况不同。 现在很多手机厂商在手机出厂时将监测电量的功能阉割掉了,因为记录电量消耗本身属
阅读全文
摘要:1. 导致UI卡顿的原因 【问】UI卡顿是如何造成的?【答】UI卡顿是指主线程了(UI线程)卡顿。 导致的原因有二: 【1】外部引起的 比如:Activity里面直接进行网络访问/大文件的IO操作内存这一块有些什么要注意的。 1)内存抖动的问题。 new Object obj = null 2)一个
阅读全文
摘要:1.基本概念 1.1 内存泄露 【什么是内存泄露】内存不在GC掌控之内了。 当一个对象已经不需要再使用了,本该被回收时,而有另外一个正在使用的对象持有它的引用从而就导致对象不能被回收。这种导致了本该被回收的对象不能被回收而停留在堆内存中,就产生了内存泄漏。 相比C/C++ 自己去分配内存和释放内存-
阅读全文
摘要:本文分析的源码是开源项目实例,参考地址:https://github.com/antoniolg/androidmvp 1.传统的mvp架构实例1 以最熟悉的login登录页面为例,目录结构如下: 其中包含3个interface,3个实现,两两一组。 1.1 View 部分 【LogView接口源码
阅读全文
摘要:1.将ijkplayer的引入 【声明全局的编译环境的指定】 【生成类库】 【拷贝example下的wiget下的media文件夹】 【拷贝文件】 【暂时不使用exoplayer-删除】 【拷贝string字符串及stringPref文件】 【代码块编译gradle编译<--没有问题之后拷贝.so】
阅读全文
摘要:【参考文章】 https://blog.csdn.net/xiangzhihong8/article/details/54017831
阅读全文
摘要:0.简单说明 1.外部调用方法 2.构造方法 3.单例对象 3.同步Get请求 【返回原始response】 4. 异步get请求 5.ResultCallback 封装 6.同步post请求封装--返回原始response 【PostRequest的封装】 7.同步post请求封装--返回Stri
阅读全文