Java四种引用:强引用、软引用、弱引用、虚引用

JAVA中的四种引用 对象的强、软、弱和虚引用 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周...

2019-04-14 15:21:10

阅读数 10

评论数 0

Asynctask 不一样的解读

Asynctask 先看看官宣也就是AsyncTask的类注释,这部分非常重要: AsyncTask enables proper and easy use of the UI thread. This class allows you to perform background operat...

2019-04-11 22:25:13

阅读数 30

评论数 0

乐观锁详解

乐观锁: 乐观锁:顾名思义,就是很乐观,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用版本号等机制。乐观锁适用于多读的应用类型,这样可以提高吞吐量,像数据库提供的类似于write_condition机制,其实都是提供的乐观锁...

2019-04-11 00:09:32

阅读数 21

评论数 0

adb shell dumpsys

命令集合 adb shell dumpsys命令是用于打印出当前系统信息(更切确的说是dumpsys命令,因为adb shell只是为了进入手机或模拟器的shell内核,使其能够执行dumpsys命令),可以在命令后面加指定的service name(比如activity,location),如果...

2019-04-10 02:20:57

阅读数 19

评论数 0

Android 启动页适配&启动优化

​ 随着全面屏的兴起,为了在各个机型上显示更美观,又出现了各种各样要适配的需求。首当其冲的是就是启动页的适配了,尽管只有一张单图,为了保持他不变形绞尽脑汁想了无数办法,最终找到一个简单的方案。先说下当前的分辨率。 主流屏 16:9 1280*720 1.777 1920*108...

2019-01-23 20:30:33

阅读数 686

评论数 2

Android 提高app流畅性 -1

影响流畅性的因素有很多,比如: View布局及本身; 主线程任务过多,导致绘制任务延迟; 内存问题影响绘制; 弱网,数据请求过慢,图片加载过慢。 本文从View渲染的角度分析和优化,后续会推出其他几个角度的分析。 流畅性的概念 App运行是否流畅的唯一标准就是app是否达到每秒60帧的平滑的帧...

2019-01-10 00:01:33

阅读数 190

评论数 0

如何确保程序的稳定性 - Android

本文主要从App-Android的视角来看,后学末进初来乍到欢迎打脸。 个人觉得要确保一个程序的稳定应该从这几个方面来分析。 代码 程序框架和设计模式 内存管理 线程管理 静态代码分析工具 容错处理-主动捕捉敏感数据异常 日志收集 测试 单元测试 压力测试 ...

2018-12-12 23:09:59

阅读数 826

评论数 0

Android 程序启动优化

前段时间Boss说:“咱们的App启动有点慢啊,而且点击桌面ICON的时候,感觉手机有一瞬间卡死了。”问题很严重,于是决定研究一下App的启动过程。 本文从下面几个角度来分析 APP启动的流程 启动耗时的量化 App运行分析工具 其他 应用程序启动时序 应用程序启动时间 启动耗时的量...

2018-12-09 17:02:35

阅读数 383

评论数 0

Android 严苛模式

  什么是StrictMode StrictMode意思为严格模式,是用来检测程序中违例情况的开发者工具。最常用的场景就是检测主线程中本地磁盘和网络读写等耗时的操作。一般会配合monkey测试一起使用,可以参考:android 压力测试 “要求”分两种:ThreadPolicy和VmPoli...

2018-12-09 15:37:52

阅读数 354

评论数 0

android 压力测试

tips:每次去面试你都会说自己的技术经验丰富,会说自己的代码质量很高,但是说多了总会觉得有点空,到底有多好呢?这里给出一种最简单的衡量标准:压力测试。 先做压力测试,然后分析日志(日志跟我们通常看到的logcat一样)。可以根据关键字exception来搜索,一般去掉会导致崩溃的异常就行。 ...

2018-12-09 15:31:07

阅读数 661

评论数 1

记一次APK瘦身全过程

主要从下面三个方面压缩,还有很多小细节可以优化,可以去官方查找资料 java代码混淆 静态资源引用 APK包拆开分析 java代码 配置混淆 网上随意找一个通用的Proguard文件,很多按此不表 初始安装包:25,165,735 配置proguard:24,820,806 缩小3...

2018-12-07 20:24:06

阅读数 130

评论数 0

Android App 耗电量分析-2

SDK-tools版本低于25的参看另外一篇文章:Android App 耗电量分析-1 默认配置了git环境,没有的自行配置 配置Go语言环境 下载 https://golang.org/doc/install#testing 配置,主要是下载下载Battery Historian代码及...

2018-12-07 19:51:42

阅读数 89

评论数 0

Android App 耗电量分析-1

分为新老两个版本的SDK-TOOL,新版的放在另外一篇博客 Android App 电量分析  耗电操作主要分为下面几种 高频通信 CPU密集型的计算 传感器  频繁唤醒系统 解决方案 -减少:您的应用可以裁剪多少操作?例如,它可以缓存下载的数据,而不是重复唤醒无线电重新下载数据? ...

2018-12-07 19:29:41

阅读数 367

评论数 0

adb过滤日志

应用场景: 日志太多,IDE有时候不受控,不能很好的定位到指定地方 程序崩溃的时候日志直接跳过,在没有封装异常捕捉的情况下,无法找到崩溃的原因,而logcat本身是有一定的缓存的 // 进入到脚本控制 adb shell // 根据包名或者关键字查看PID ps | grep yqr...

2018-06-19 20:40:35

阅读数 680

评论数 0

android studio 导入项目无法运行

#### 学会看日志,自己分析问题1. 发生这种情况一般连都会报xxx plugin找不到plugin里面看一下 xxxx 插件是否安装,没有就去安装一下,当然通常都是安装了的。2. 然后再一个能正常启动的项目进行对比里面的buildscript看看是否全面:- 对比点1:工程下的build.gr...

2018-06-07 11:14:52

阅读数 7443

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭