- 博客(5)
- 收藏
- 关注
原创 JVM、Dalvik、ART
JVM:1、基于栈式结构,特点是平台无关性,适用于资源受限的系统。2、执行的class文件,Java将java文件编译成二进制字节码class文件。3、只能运行一个实例,也就是所有应用都运行在同一个JVM中Dalvik:1、在Android 5.0之前使用。2、基于寄存器的架构,特点是指令集架构依赖硬件,可移植性差,性能更优。寄存器是CPU上面的一块存储空间,栈是内存上面的一段连续的存储空间,所以CPU直接访问自己上面的一块空间的数据的效率肯定要大于访问内存上面的数据。基于栈架构的程序在运行时虚
2021-12-20 12:10:39 1275
原创 Android 进程疑虑验证
在Android中使用多进程的一般方式为在mainfest文件中对组件进行process设置,从而创建使用多进程,一般使用多进程的目的是为了隔离和内存分担。设置多进程的方式也包括两种:一种是私有进程,android:process=":remote",以冒号开头,则实际的进程名为 程序包名+私有进程名。这种设置形式表示该进程为当前应用的私有进程,其他应用的组件不可以和它跑在同一个进程中。一种是进程名称不以“:”开头的进程都可以叫全局进程,如android:process=“com.remote”,以小
2021-11-01 15:23:39 1677
原创 forceStop 杀死应用
有过多进程开发经验的同学可能大多遇到过一个问题,当你需要彻底kill掉一个应用时,特别是一些多进程互相保活但是某些场景又需要彻底退出,单纯的用Process.killProcess()或者System.exit()很难彻底杀死应用,这个时候可以使用forceStop方式来kill掉,该方式和系统设置中的强制停止使用的应该是一样的:Method method = Class.forName("android.app.ActivityManager").getMethod("forceStopPackage"
2021-06-24 15:53:33 611
原创 java 数据去重
数据去重除了对list循环之外一般会借助Set不包含重复数据特性来达到去重目的。1、HashSet & LinkedHashSet重写对象的hashCode和equals,优先判断hashCode返回值是否一样,一样再判断equals。HashSet无序(基于哈希表实现),LinkedHashSet有序(数据添加时的顺序),LinkedHash继承HashSet,均为非同步集合。2、TreeSet数据实现Comparable接口,根据compareTo返回值判断数据是否重复,基于红黑树实现,
2021-06-22 12:17:22 1667
原创 内存优化骚操作之GPU
某主机厂在项目之初对各三方应用提出应用内存要求,要求各应用内存不得超出某个限定值,我们应用拿到的内存限定值为100M。cibei起初我们以dumpsys meminfo查看内存满足限定值问题不大
2021-06-21 16:56:53 428
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人