Android далвик виртуальная машина - PullRequest
2 голосов
/ 27 января 2012

Мне было интересно, есть ли способ в ОС Android запустить новую виртуальную машину Dalvik, которая не разветвляется от основного процесса zygote (виртуальной машины zygote), либо через оболочку adb, ndk или java?

Кто-нибудь пытался успешно использовать одну из команд adb: app_process, dalvikvm, dvz?

Спасибо за помощь

1 Ответ

4 голосов
/ 27 января 2012
  1. Используйте dx для преобразования вашего байт-кода в dex
  2. используйте dalvikvm для запуска

Если вам нужна помощь, используйте опцию -help

$ dalvikvm -help

dalvikvm: [options] class [argument ...]
dalvikvm: [options] -jar file.jar [argument ...]

The following standard options are recognized:
  -classpath classpath
  -Dproperty=value
  -verbose:tag  ('gc', 'jni', or 'class')
  -ea[:<package name>... |:<class name>]
  -da[:<package name>... |:<class name>]
   (-enableassertions, -disableassertions)
  -esa
  -dsa
   (-enablesystemassertions, -disablesystemassertions)
  -showversion
  -help

The following extended options are recognized:
  -Xrunjdwp:<options>
  -Xbootclasspath:bootclasspath
  -Xcheck:tag  (e.g. 'jni')
  -XmsN  (min heap, must be multiple of 1K, >= 1MB)
  -XmxN  (max heap, must be multiple of 1K, >= 2MB)
  -XssN  (stack size, >= 1KB, <= 256KB)
  -Xverify:{none,remote,all}
  -Xrs
  -Xint  (extended to accept ':portable' and ':fast')

These are unique to Dalvik:
  -Xzygote
  -Xdexopt:{none,verified,all,full}
  -Xnoquithandler
  -Xjnigreflimit:N  (must be multiple of 100, >= 200)
  -Xjniopts:{warnonly,forcecopy}
  -Xjnitrace:substring (eg NativeClass or nativeMethod)
  -Xstacktracefile:<filename>
  -Xgc:[no]precise
  -Xgc:[no]preverify
  -Xgc:[no]postverify
  -Xgc:[no]concurrent
  -Xgc:[no]verifycardtable
  -XX:+DisableExplicitGC
  -X[no]genregmap
  -Xverifyopt:[no]checkmon
  -Xcheckdexsum

Вы также можете скомпилировать dalvikvm для x86 и запустить его на своем хост-компьютере.

...