- 博客(1)
- 资源 (1)
- 收藏
- 关注
原创 Android Root运行命令辅助类
Android开发当中,经常会遇到调用Linux命令的时候,而有时候我们自己在编写或者使用别人的辅助类时候,常常会遇到如下两个问题。1、程序莫名其妙的无法响应,线程死锁无限等待。 在使用JAVA Runtime类的时候经常会遇到缓存区死锁的问题,那是因为执行命令的时候,所提供的缓冲大小有限,如果不及时处理命令往屏幕的输入,当缓冲满了,就容易出现缓冲区死锁的问题。2、一直等待Linux的命令的返回。
2015-06-25 17:53:35 674
SelectActivity-过滤startActivity请求
原理:
context.startActivity跳转间接使用Instrumentation对象execStartActivity方法,而Instrumentation存在于ActivityThread中,有趣的是在应用启动后,有且只有一个ActivityThread对象,那么Instrumentation也只有一个,也就是说不管哪个Context使用startActivity方法都是间接使用同一个Instrumentation对象。既然要过滤startActivity请求,那么可以通过替换原来的Instrumentation来达到我们的目的。这里使用代理模式,在做具体实现之前,先执行我们设定的动作(过滤)。
注:如果使用JDK自带的代理处理模块,在Android上不能运行,因为Android使用的Dalvik字节码,而不是java字节码,需要使用第三方库dexmaker。
2014-04-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人