virtualbox 安装 android 经验总结

装了好多个版本,最终总结一下遇到的问题,php

一、直接下载的镜像文件没有找到如何设置分辨率的方法,所以放弃使用html

二、在安装过程当中,首先建立虚拟机,在virtualbox中建立硬盘的时候必定要选HDD格式,不然在安装好安卓之后点击设置里面的存储,会出现“设置”已中止工做的错误。node

三、我安装过程当中没有见到建立flake sdcard的选项,不知道怎么回事,也分了两个分区,一个主一个逻辑,可是后面只有star和reboot 两个选项,没有建立虚拟sd卡的选项,暂且搁置。android

按如下方法修改SDCARD,不知为什么,进入安卓之后点击设置里面的存储,会出现“设置”已中止工做的错误。ios

修改grub的menu.lstwindows

启动虚拟机,到debug mode下eclipse

以 RW 模式从新挂载分区编辑器

# mount -o remount,rw /mnt

 

编辑文件:ui

# vi /mnt/grub/menu.lst

 

  • SDCARD=<device node>

    Specify a device node to be mounted. For example, SDCARD=sdc1 (or /dev/sdc1, /dev/block/sdc1). You can specify a whole disk (e.g., sdc) or a partition in the disk (e.g., sdc2). If specifying a whole disk, vold will use the first available vfat partition, or the whole disk if no partition table found.spa

  • 上面为官网的说明,具体在menu.lst里面的最后

 

SDCARD=sda5

在debug mode下重启Android-x86

# /system/bin/reboot

修改menu.lst文件也能够在安卓启动下修改,参考:

若是你想Android在启动的时候就默认进入分辨率选择画面或者默认采用你指定的分辨率启动虚拟机,那么能够参考如下步骤

1. 进入android虚拟机后按alt+F1进入命令行

2. 输入mkdir /data/fs

3. 挂载硬盘,使用下列命令

mount -t 硬盘格式 /dev/block/硬盘名称 /data/fs

硬盘格式为你虚拟机硬盘的格式,我这里是ext3 硬盘名称则是你虚拟机的

硬盘名称我这默认是sda1,表示第一个sata硬盘, linx下具体的硬盘命名规则请自行Google之

mount -t ext3 /dev/block/sda1 /data/fs

将硬盘挂在到 /data/fs文件夹上

4. vi /data/fs/grub/menu.lst 编辑启动菜单列表 (vi这个命令行编辑器怎么用请自行Google之)

5. 和刚才启动时同样,在第一个kernel那一行的末尾增长 vga=ask 后保存
6. 重启虚拟机,这时候你就会发现每次Android启动的时候就会询问分辨率了

 

 

四、默认分辨率仍然不能修改,只能是提供选择的界面,目前比较恰当的分辨率为320x480,由于个人是13寸的本,因此480x800有滚动条

             解决:     修改menu.list时候,直接使用 vga=0x360 就行了,这样不会每次都询问

五、关于快捷键:

较经常使用的有:

  • Alt-F1 = 进入 console 模式
  • Alt-F7 = 回到 GUI 模式
  • Alt-F9 = 图形界面
  • Alt-F10 = 画面旋转 180 度
  • Alt-F10 = 画面旋转 180 度
  • Alt-F11 = 画面向左旋转 90 度
  • Alt-F12 = 画面向右旋转 90 度
  • Ctrl-P = 开启Android设定画面
  • "Windows 键"至关于 Android 的 Home 按钮。
  • "Esc" 至关于 Android 的 Back 按钮
  • F2 至关于 Android 的 Menu 按钮
  • F3 至关于 Android 的 Search 按钮
  • 右边的菜单键(winctrl中间的键) = Android菜单键

貌似上面的有些并不许确

个人笔记本上home键无论用,

六、每次都须要在virtualbox中禁止自动独占鼠标

七、关闭虚拟机后再开启每次链接eclipse时都须要从新reset adb:

devices视图中选择重启adb:

 

限制:若是你的工程里面有使用so,那么请确保在Android.mk中修改接口类型为x86类型的,不然apk将没法在Android x86模拟器上运行。这也意味着若是你下载的apk里面有使用so的话,通常都没法再Android x86上运行的,由于应用商店中的apk的so都是arm类型的。因此通常若是是开发调试so的话,仍是建议使用真机或者SDK的模拟器。

 附:

menu.lst修改方法:

把"default=0"改为"default=2"就能默认启动windows(这个值是从零开始向下加一计数的),把"timeout=6"改为"timeout=5"就表示5秒内没按键就默认启动前面设定的那一个菜单。
default=2
timeout=5
root (hd0,14)
splashimage=/grub/android-x86.xpm.gz

title Android-x86 4.0-RC1
	kernel /android-4.0-RC1/kernel quiet root=/dev/ram0 androidboot.hardware=tegav2 acpi_sleep=s3_bios,s3_mode SRC=/android-4.0-RC1 SDCARD=/sd/sdcard.img
	initrd /android-4.0-RC1/initrd.img

title Android-x86 4.0-RC1 (Debug mode)
	kernel /android-4.0-RC1/kernel root=/dev/ram0 androidboot.hardware=tegav2 acpi_sleep=s3_bios,s3_mode DEBUG=1 SRC=/android-4.0-RC1 SDCARD=/sd/sdcard.img
	initrd /android-4.0-RC1/initrd.img

title Windows
	rootnoverify (hd0,0)
	chainloader +1

 

参考了如下文章:

http://www.android-x86.org/documents/sdcardhowto

http://www.oschina.net/question/565065_92851

http://www.xmumu.com/android-x86

http://be-evil.org/create-an-x86-emulator-based-height-performance-android-develop-environment.html

http://blog.csdn.net/kevinkitty_love/article/details/7687562

http://blog.csdn.net/qq280948982/article/details/7075073

http://www.cnblogs.com/mixiyou/archive/2013/03/17/2965023.html

http://www.ibeifeng.com/goods.php?id=242

相关文章
相关标签/搜索