android 虚拟机

来源:互联网 发布:网络视频 编辑:程序博客网 时间:2024/05/17 17:17

zygote进程被启动后,创建JVM实例

JNIEnv* env;
    if (startVm(&mJavaVM, &env) != 0) {
        return;
    }
    onVmCreated(env);

以后调用任何JAVA CODE都是通过env来执行

env->CallStaticVoidMethod(startClass, startMeth, strArray);

这就是调JAVA的某个类的某个方法比如ZYGOTEINIT.JAVA.MAIN,以后就是执行的JAVA代码了。

复制进程时这个虚拟机实例也被复制,所以JAVA代码执行总是由每一个进程的JVM INSTANCE执行。


原创粉丝点击