Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/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-在为Nook平板电脑配置了一个新的AVD之后,运行它时,我发现了一个错误_Android - Fatal编程技术网

Android-在为Nook平板电脑配置了一个新的AVD之后,运行它时,我发现了一个错误

Android-在为Nook平板电脑配置了一个新的AVD之后,运行它时,我发现了一个错误,android,Android,我为运行Android操作系统的Nook设备(来自Barnes和Noble)添加了两个模拟器 在配置它之后,我尝试运行它,在选择要运行的AVD之后,我几乎立即出现了这个运行时错误: [2013-01-07 16:59:15 - Emulator] Failed to allocate memory: 8 [2013-01-07 16:59:15 - Emulator] [2013-01-07 16:59:15 - Emulator] This application has requested

我为运行Android操作系统的Nook设备(来自Barnes和Noble)添加了两个模拟器

在配置它之后,我尝试运行它,在选择要运行的AVD之后,我几乎立即出现了这个运行时错误:

[2013-01-07 16:59:15 - Emulator] Failed to allocate memory: 8
[2013-01-07 16:59:15 - Emulator] 
[2013-01-07 16:59:15 - Emulator] This application has requested the Runtime to terminate it in an unusual way.
[2013-01-07 16:59:15 - Emulator] Please contact the application's support team for more information.
有人知道为什么会发生这种情况吗?我能做些什么来修复它


谢谢大家!

如果您遇到以下问题:

无法分配内存:8

这通常意味着AVD无法获得足够的内存来完全运行。好的第一步是打开ADV管理器,编辑AVD,使其使用更少的RAM。我的配置是512MB,但可以理解的是,这将随着机器的不同而变化,从256MB开始工作是一个好主意

如果现在仍然失败,请使用命令行/终端运行模拟器

emulator -avd -yourAVDName

并查看是否生成了日志。如果有的话,你就有一个更具体的原因来解释为什么AVD不能工作,并且可以做更多的调查。

发生内存问题的原因是,在Windows上,模拟器作为32位进程运行,因此它只能获得2GB的用户内存,这显然不足以支持大内存和大屏幕

我自己解决了这个问题,将emulator-arm.exe标记为LargeAddressware,这将可用内存增加到3GB

这可以使用editbin.exe来完成,editbin.exe是Visual Studio的一部分

editbin /largeaddressaware <path-to-android-sdk>\tools\emulator-arm.exe 
editbin/largeaddressaware\tools\emulator-arm.exe
exe没有签名,因此它不会直接抱怨。尽管如此,使用它的风险自负,因为它只是一种黑客行为,如果应用程序实际上没有准备好正确处理超过2GB限制的地址,可能会带来问题

对我来说,这是我运行具有WXGA800分辨率的android-17(4.2)的唯一方法,否则即使将内存减少到256MB也不起作用

顺便说一句,更改很容易恢复,只需运行以下命令:

editbin /largeaddressaware:no <path-to-android-sdk>\tools\emulator-arm.exe 
editbin/largeaddressware:no\tools\emulator-arm.exe

获取更多内存?您的内存似乎用完了,因为AVD无法分配足够的内存。@A--C该AVD需要多少ram?实际上,我刚刚将该AVD的需求从1024更改为512,它似乎正在尝试工作:)如果您想将此作为一个答案发布,我将接受,因为这是您的想法,弄乱ram。非常感谢。事实上,avd似乎挂起了,现在只剩下几分钟的时间了:)哈哈……现在正在调试它。我想说等几分钟,模拟器有时速度非常慢。如果失败,从命令行运行emulator,这样您可以看到所有日志输出。另外,这里是我的一个模拟器的我的。我在一台可用容量约为3.3GB的机器上。