Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 为什么只有在特定条件下才能启动2个以上的AVD_Android_Avd - Fatal编程技术网

Android 为什么只有在特定条件下才能启动2个以上的AVD

Android 为什么只有在特定条件下才能启动2个以上的AVD,android,avd,Android,Avd,我遇到了一个我不完全理解的奇怪问题。我尝试从终端启动2个以上的AVD。它甚至适用于4个AVD,但仅适用于特殊条件 我为3个AVD使用了一个代码: echo "no" | $ANDROID_HOME/tools/android create avd --name "Test-Emulator-API23-Nexus-5" --target "Google Inc.:Google APIs:23" --abi google_apis/x86_64 --device "Nexus 5" --skin

我遇到了一个我不完全理解的奇怪问题。我尝试从终端启动2个以上的AVD。它甚至适用于4个AVD,但仅适用于特殊条件

我为3个AVD使用了一个代码:

echo "no" | $ANDROID_HOME/tools/android create avd --name "Test-Emulator-API23-Nexus-5" --target "Google Inc.:Google APIs:23" --abi google_apis/x86_64  --device "Nexus 5" --skin "1080x1920"
echo "no" | $ANDROID_HOME/tools/android create avd --name "Test-Emulator-API23-Nexus-7" --target "Google Inc.:Google APIs:23" --abi google_apis/x86_64  --device "Nexus 7" --skin "1200x1920"
echo "no" | $ANDROID_HOME/tools/android create avd --name "Test-Emulator-API23-Nexus-10" --target "Google Inc.:Google APIs:23" --abi google_apis/x86_64  --device "Nexus 10" --skin "2560x1600"

$ANDROID_HOME/platform-tools/adb kill-server
$ANDROID_HOME/platform-tools/adb start-server

$ANDROID_HOME/tools/emulator -port 5556 -avd Test-Emulator-API23-Nexus-5  -gpu on &>/dev/null &
$ANDROID_HOME/tools/emulator -port 5558 -avd Test-Emulator-API23-Nexus-7  -gpu on &>/dev/null &
$ANDROID_HOME/tools/emulator -port 5560 -avd Test-Emulator-API23-Nexus-10  -gpu on &>/dev/null &
当我复制粘贴最后3条通道,立即将AVD启动到终端时,它就起作用了。然后所有3个AVD同时启动并成功启动。它也适用于4个AVD

如果我尝试按顺序执行,它将不允许我启动超过2个AVD。所以我把Nexus-5放在了第一条发射通道上。我一直等到它完全启动。然后我把Nexus-7放在第二条发射通道上——它也成功地启动了。然后,如果我尝试启动更多的AVD,我会被冻结-启动时黑屏冻结

知道为什么会这样吗?为什么我可以同时启动多个AVD,但我不能逐个启动它们


问题与设置为HAXM的内存余量有关。默认情况下,我的HAXM RAM使用量是2gb。重新安装HAXM后

分配6gb的内存,我可以按顺序启动4个AVD


我猜测它以前工作的原因是:因为所有AVD都是同时启动的——在同一时刻,所有AVD都通过了内存限制检查,因此它们被允许运行。

我不确定是否存在双重行为,但据我所知,AVD占用了太多的RAM,这可能就是为什么启动更多AVD时没有为进一步的AVD留下RAM空间的原因。但如果是这样的话,我不能让4个AVD同时工作——但我有(因此有足够的资源支持它们)。问题只是我尝试启动它们的方式。奇怪但有趣的问题。