Немножко позужу:
На самом деле, что происходит после форка в java-мире далеко не так интересно. Вся мякотка происходит как раз до, а «магия» андроида — в момент форка. Ну, вернее, вся магия и заключается в форке, отборе прав доступа и преобразовании зиготы в приложение.
Кому интересно — можно начинать разбираться с platform/frameworks/base/core/jni/com_android_internal_os_Zygote.cpp, nativeForkAndSpecialize(). Посмотрите, кто вызывает, и что происходит сразу после вызова. Там все очень лампово.
Как Android запускает MainActivity