У меня есть некоторая путаница в отношении жизненного цикла нативного кода в Android-приложениях. Я видел ссылки, в которых говорится, что собственный код выполняется внутри виртуальной машины Dalvik, но так ли это? У меня сложилось впечатление, что виртуальная машина запускает только байт-код Dalvik. С другой стороны, собственный код использует JNI, который вызывается из Java внутри виртуальной машины. Наконец, имеет ли значение использование NativeActivity?
Я думал, что достаточно хорошо понимаю NDK, пока не сел и не попытался объяснить это самому себе. Я даже не уверен, что задаю вопрос разумно.