摘要:
一、Binder框架Binder用于完成进程间通信(IPC),比如普通应用程可以调用音乐服务,它工作在内核态,属于一个驱动,只是这个驱动要用的“硬件”是内存。Binder架构由三个模块构成:服务端接口,Binder驱动,客户端接口。我们分开来看:服务端一个Binber服务端实际上是一个Binder类... 阅读全文
摘要:
一、Service通过IBinder与Activity进行通信在Service中进行下载Servicepackage chuiyuan.lsj.androidjava.service;import android.app.Service;import android.content.Intent;i... 阅读全文
摘要:
一、工作目标在服务端执行临时代码。实现的过程中要解决的问题:(1)如何编译提交到服务器的java代码?ans:提交字节码,其实也可以提交.java文件。(2)如何执行编译后的java代码 ?ans: 让加载器加载这个类生成的class对象,再反射调用类的方法。(3) 如何收集java的执行结果?an... 阅读全文
摘要:
参考的有什么是gradlehttp://www.zhihu.com/question/30432152gradle的强大功能,如何通过Gradle实现一套代码开发不同特性的APKhttp://ghui.me/blog/20150310/create-several-variants-of-an-ap... 阅读全文
摘要:
一、规则总结轻量级的同步机制,变量V为volatile类型。(1) 在工作内存中,每次使用V前都要先从主内存刷新最新的值,用于保证能看见其它线程对变量V所做的修改后的值。(2) 在工作内存中,每次修改V后都立刻同步到主内存中,用于保证其它线程看到自己对变量V所做的修改。(3) 对volatile变量... 阅读全文
摘要:
一、代码生成的例子 java中的javac命令就是字节码生成的“老祖宗”,并且它也是用java写的。还有Web 中的jsp编译器,编译时植入的AOP框架,还有很常用的动态代理,甚至在反射时JVM也有可能在运行时生成字节码来提高速度. 如果使用过Spring来做Bean的管理 ,那么就使用过动态代... 阅读全文
摘要:
本人写的http://www.nowcoder.com/discuss/2082今天下午去参加 了 百度的安卓面试,很荣幸的挂了。本来别人好像是准备两轮面试一起搞的,结果给了我一面,然后就告诉说二面对我可能比较难。我本身是是做电子的,自己自学的软件,整个一面过程一共1小时40分钟。刚刚开始简单的做了... 阅读全文
摘要:
一、本地Service通信LocalService/** * Created by lsj on 2015/8/29. * 这是一个LocalService */public class StrReplaceService extends Service { private final Str... 阅读全文
摘要:
Service还是ThreadService用来执行长时间的后台任务,同时线程也可以执行后台任务,它们的不同是什么?Service的特点1.默认情况下,Service是运行在主线程中,如果要执行长时间的耗时工作,应该在Service中再开一个Thread 来执行。2.Service的优先级高于Act... 阅读全文
摘要:
可以先参考java的java类加载器。一、DexClassLoader 一般情况下,我们使用import就可以了,为什么还要使用类装载器呢?import中所引用的类文件有两个特点:1.一定在存在于本地,当程序运行时需要这个类时,内部类装载器就会自动装载,程序员感知不到这个过程。2.编译时一定要在现... 阅读全文