2012-02-10 83 views
1

我开发了一个Android应用程序,但是当我尝试通过Eclipse在模拟器中运行它时,仿真器总是需要很长时间才能加载。我决定在VirtualBox上创建一个Android虚拟机,我安装了AndroBOX-2.3.r.1-generic,它工作正常,速度更快,但是当我尝试运行我的应用程序时,我有一个RuntimeException: unable to start activity ComponentInfo: android.view.InflateException: Binary XML file line #2: Error inflating class GridLayout虚拟框上的android模拟器的自定义分辨率

我希望如果我使用自定义分辨率运行Android虚拟机,问题可以解决。我开发了一款10.1英寸WXGA800平板电脑(Theme.Holo)。如何找到有用的分辨率数据来编辑.vbox配置文件?

<ExtraData>

<ExtraDataItem name="GUI/LastCloseAction" value="?"/> 
    <ExtraDataItem name="GUI/LastGuestSizeHint" value="?,?"/> 
    <ExtraDataItem name="GUI/LastNormalWindowPosition" value="?,?,?,?"/> 
    <ExtraDataItem name="CustomVideoMode1" value="?x?x?"/> 

</ExtraData>

非常感谢。

+0

在平板电脑上运行应用程序时出现问题吗?或者所有设备上都会出现此问题? – Rotemmiz 2012-02-11 00:35:02

+0

实际上,我没有可用于运行我的应用程序的物理设备。我使用Eclipse + SDK开发并测试了它。我的应用工作得很好,但默认的Android模拟器对于准确测试来说太慢了。所以我决定在Linux VirtualBox上设置一个更快的Android模拟器,但我有布局造成的异常。 – Ant4res 2012-02-11 09:11:59

+0

请发布logcat输出 – Rotemmiz 2012-02-11 09:50:39

回答

7

关于你提到的分辨率变化的问题:

您需要配置所需的分辨率在两个地方:

在VirtualBox的虚拟机配置

  1. 关闭虚拟机VirtualBox的和。
  2. 使用VBoxManage配置自定义分辨率:VBoxManage setextradata "YourVMName" "CustomVideoMode1" "480x800x16"(或任何其他分辨率)。

在VM GRUB配置

  1. Remonut引导分区:mount -o remount,rw /mnt
  2. 然后,您可以编辑menu.lst文件:vi /mnt/grub/menu.lst
  3. 默认参数为:quiet root=/dev/ram0 androidboot_hardware=eeepc acpi_sleep=s3_bios,s3_mode DPI=240 SRC=/android-2.3-RC1

  4. add UVESA_MODE=480x800的参数行,像这样:quiet root=/dev/ram0 androidboot_hardware=generic_x86 acpi_sleep=s3_bios,s3_mode DPI=240UVESA_MODE=480x800SRC=/android-2.3-RC1

重新启动计算机,但现在应启动与自定义分辨率您定义。

+0

如果屏幕看起来都搞砸了,请尝试使用“480x800x32”来代替。 – 2017-08-24 21:08:49

相关问题