Java
Roben518
这个作者很懒,什么都没留下…
展开
-
Android GC Log
安卓是为移动设备设计的,所以开发者应该时刻留意app占用的RAM(Random-Access Memory)。尽管Dalvik和ART会例行垃圾回收(GC),但并不代表开发者可以忽略app的内存使用情况(什么时候在哪里分配/释放了多少内存)。为了确保稳定的用户体验,让系统能够在多个app之间迅速切换,app不要在用户没有和它交互时消耗不必要的内存,这一点很重要P.S.Dalvik(Andr翻译 2016-08-25 15:33:50 · 607 阅读 · 0 评论 -
MVP架构设计
MVPMVP简介ModelViewPresenterActivityViewMVP各层关系梳理 Model与Presenter View与Presenter Presenter完成的交互 Model与View之间的交互MVP适用环境MVPRetrofitRxJava加入Retrofit创建interface修改Model层内容修改Presen转载 2016-08-22 16:47:26 · 660 阅读 · 0 评论 -
java反射机制 以及通过反射获得类的变量字段,方法,构造函数
反射机制首先获得类模板的方式有三种:1. Class cls=对象名.getClass();//使用这种方式获取类模板有局限性:必须现有对象才能得到类模板对象2.Class cls=Class.forName(包名+类名的字符串);//最常用的,只要知道完全限定名(包名+类名)字符串即可获取类模板对象3.Class cls=类名.class;//最简单,也比较常用,但必须指定类转载 2016-12-22 17:26:29 · 617 阅读 · 0 评论 -
判断手机是否有root权限
/** * 判断当前手机是否有ROOT权限 * @return */ public boolean isRoot(){ boolean bool = false; try{ if ((!new File("/system/bin/su").exists()) && (!new File("/system转载 2016-12-29 17:57:37 · 3141 阅读 · 0 评论 -
Android 在一个程序中启动另一个程序
Android 开发有时需要在一个应用中启动另一个应用,比如Launcher加载所有的已安装的程序的列表,当点击图标时可以启动另一个应用。一般我们知道了另一个应用的包名和MainActivity的名字之后便可以直接通过如下代码来启动:Intent intent = new Intent(Intent.ACTION_MAIN);intent.addCategory(Intent.CATE转载 2016-12-30 14:51:43 · 480 阅读 · 0 评论 -
Android 静默安装和智能安装的实现方法
1 简介最近研究了Android的静默安装和智能安装,于是写博客记录一下。 静默安装就是无声无息的在后台安装apk,没有任何界面提示。 智能安装就是有安装界面,但全部是自动的,不需要用户去点击。 首先强调两点:静默安装必须要root权限智能安装必须要用户手动开启无障碍服务2 原理静默安装、卸载的原理就是利用pm install命令来安装apk,pm un转载 2017-02-22 18:09:02 · 559 阅读 · 0 评论 -
DexIndexOverflowException两种情况的解决方法
如果你的Android项目足够大,又或者你引用了许多第三库,那么一定会遇到DexIndexOverflowException,在Gradle构建时报错:UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexIndexOverflowException: Cannot merge new index 65562 into a non-j转载 2017-11-29 16:39:08 · 747 阅读 · 1 评论