ããããèµ·åã«æéãããããŸãããç¶æ ã¹ãããã·ã§ããã䜿çšããŠèµ·åãé«éåããŠããç¹ã«ãããã°ã¢ãŒãã§ã¯ãã³ãŒãã®å®è¡ã¯äŸç¶ãšããŠäœéã§ãã
Qemuã®ãã©ã¡ãŒã¿ãŒã®åŸ®èª¿æŽã¯ããŸã圹ã«ç«ã¡ãŸããã§ããããšãã¥ã¬ãŒã¿ãŒã®é床ã¯äŸç¶ãšããŠé ããããã»ãšãã©ã®éçºè ã¯USBã§æ¥ç¶ãããå®éã®ããã€ã¹ã䜿çšããããšã奜ãã§ãããã
ãããã«ãããç§ã¯è§£æ±ºçãèŠã€ãããã£ãã®ã§ãããªããªããã¢ããªã±ãŒã·ã§ã³ã®çµæããããžã§ã¯ã¿ãŒã§è¡šç€ºãããã®ã§ãã¢ããªã±ãŒã·ã§ã³ã®è¡šç€ºãé ããªãããšãæãŸãªãã£ãããã§ãã
ãšãã¥ã¬ãŒã·ã§ã³ãšã·ãã¥ã¬ãŒã·ã§ã³
Appleã®ãã©ãããã©ãŒã åãã®ãœãããŠã§ã¢ã¯éçºããŠããŸããããiPhoneã·ãã¥ã¬ãŒã¿ãŒã«ã¯Androidãšãã¥ã¬ãŒã¿ãŒã®ãããªããã©ãŒãã³ã¹ã®åé¡ã¯ãªãããã§ãã
ãã®çç±ã®1ã€ã¯ããå®éã®ã·ãã¥ã¬ãŒã¿ããšããŠæ©èœããªãããšã§ãã iPhoneã·ãã¥ã¬ãŒã¿ãŒã§äœ¿çšãããCPUåœä»€ã¯ãã·ãã¥ã¬ãŒã¿ãŒïŒx86ïŒãå®è¡ããŠããã³ã³ãã¥ãŒã¿ãŒã®å Žåãšåãã§ãã
äžæ¹ãAndroidã¯ãx86ããã»ããµã®äžã«å®éã®ARMã¢ãŒããã¯ãã£ããã»ããµããšãã¥ã¬ãŒãããããšãäœåãªããããŠããŸãã ããã«ãããããã©ãŒãã³ã¹ã®é¢ã§ããªã倧ããªãªãŒããŒããããè¿œå ãããŸãã
å°ãªããšãã¢ããªã±ãŒã·ã§ã³ã®ãã¢ãè¡ãããã«ãARMããšãã¥ã¬ãŒãããå¿ èŠã¯ãããŸãããAndroidãšã¢ããªã±ãŒã·ã§ã³ãå®è¡ããæ©èœã®ã¿ãå¿ èŠã§ãã
Android_x86
幞ããªããšã«ãAndroidãx86ããã»ããµã«ç§»æ€ããããã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãããããŸãïŒ http : //www.android-x86.org/ ã
ãããžã§ã¯ãã«ã¯ããŠã³ããŒãçšã®ç»åãããã€ããããAndroid SDKã®å ¬åŒãªãªãŒã¹ã®ãã¹ãŠã«å¯Ÿå¿ããŠããããã§ã¯ãããŸããããAndroid 2.3ã®èµ·åå¯èœãªç»åãæäŸããŠãããŸããã
VirtualBoxå ã®Android_x86ã»ããã¢ãã
æåã®ã¹ãããïŒAndroid_x86 ISOã€ã¡ãŒãžãããŠã³ããŒãããŸãã ç§ã¯
android-x86-2.3-RC1-eeepc.iso
ã䜿çšããŸãããããã¯http://www.android-x86.org/downloadããããŠã³ããŒãã§ããŸã ã
次ã®ã¹ãããïŒãã®ã€ã¡ãŒãžãå®è¡ã§ããä»®æ³ãã·ã³ãäœæããŸãã
VirtualBoxã䜿çšããŸããããQEmuãããŸãæ©èœãããšèããŸããã
ãã®ãããVirtualBoxã§ã¯ãæ°ãããã·ã³ãäœæããå¿ èŠããããŸãã
- ã¿ãŒã²ããOSïŒLinuxãéžæ
- ã¿ãŒã²ããOSããŒãžã§ã³ïŒãã®ä»
- 1GBã®RAMãš1ã€ã®CPUã䜿çšããŸããïŒããã©ã«ãã§æ®ãã®èšå®ãæ®ããŸããïŒ
- ããŒããã©ã€ãã®è¿œå ïŒVDIãã©ã€ããåçãµã€ãºã512 Mio
- ããŠã³ããŒãããISOãããŒããããCDROMãè¿œå ããŸã
ããŒãã¡ãã¥ãŒã§ãããŒããã©ã€ãã®ã€ã³ã¹ããŒã«ãéžæããŸãã
![](https://habrastorage.org/storage1/2adb2fc1/46bb4d18/5118e5ab/6fc1a5d7.png)
ã€ã³ã¹ããŒã«äžã«ã次ã®ããšãè¡ãå¿ èŠããããŸãã
- ããŒããã©ã€ãã«æ°ããããŒãã£ã·ã§ã³ãäœæããŸã
- ext3ã§ãã©ãŒããããã
- ãã®ã»ã¯ã·ã§ã³ãéžæããŠAndroidãã€ã³ã¹ããŒã«ããŸã
ã€ã³ã¹ããŒã«ãå®äºãããïŒ
- ä»®æ³ãã·ã³ããªãã«ããŸã
- ISOã€ã¡ãŒãžãæãCDROMããã€ã¹ãåé€ããŸãïŒVirtualBoxèšå®ãŠã£ã³ããŠã§ïŒ
ä»®æ³ãã·ã³ãèµ·åããŸããããã§ãåäœããAndroid x86ã€ã¡ãŒãžãäœæãããŸããã
ãã ããEee PCçšã«ããã©ã«ãã§æ§æãããŠãããããããã¯ã¹ããŒããã©ã³ã®ç»é¢çšã«èšèšãããã¢ããªã±ãŒã·ã§ã³ã®ãã¹ãã«ã¯çæ³çã§ã¯ãããŸããã
次ã«ãé»è©±ç»é¢ã®æ§æãå€æŽããå¿ èŠããããŸãã
VMãšVirtualBoxããªãã«ããŸãã
æåã®ã¹ãããïŒæ°ãã解å床ã¢ãŒããäœæããŸãã 3ã€ã®ã¢ãŒããå®çŸ©ããŸããã
VBoxManage setextradata "Android2.3" "CustomVideoMode1" "320x480x16" VBoxManage setextradata "Android2.3" "CustomVideoMode2" "640x960x16" VBoxManage setextradata "Android2.3" "CustomVideoMode3" "480x720x16"
ããã§ãAndroid2.3ã¯äœæãããä»®æ³ãã·ã³ã®ååã§ãã
æ°ããã¢ãŒããçºè¡šãããã®ã§ããããã䜿çšããå¿ èŠããããŸãã ãããè¡ãã«ã¯ãã«ãŒãã«ãã©ã¡ãŒã¿ãŒãå€æŽããå¿ èŠããããŸãã
ãããè¡ãã«ã¯ãä»®æ³ãã·ã³ãåèµ·åããããŒãã¡ãã¥ãŒã§ãããã°ã¢ãŒããéžæããŠãAndroidãã³ãã³ãã©ã€ã³ã§èµ·åããããã«ããå¿ èŠããããŸãã
ä»®æ³ãã·ã³ãèµ·åããŸãã
èµ·åããããããŒãããŒãã£ã·ã§ã³ãèªã¿åã/æžã蟌ã¿ã§åããŠã³ãããŠãGrubæ§æãå€æŽã§ããããã«ããŸãã
mount -o remount,rw /mnt
ãã®åŸãmenu.lstãã¡ã€ã«ãç·šéã§ããããã«ãªããŸãã
vi /mnt/grub/menu.lst
æåã®ã¡ãã¥ãŒé ç®ïŒ3è¡ïŒãè€è£œããã«ãŒãã«ãã©ã¡ãŒã¿ãŒïŒæåã®ãšã³ããªãã¿ã€ãã«ããšæ¬¡ã®2è¡ïŒãç·šéããŸãã
ããã©ã«ãã®ãªãã·ã§ã³ã¯æ¬¡ã®ãšããã§ãã
quiet root = / dev / ram0 androidboot_hardware = eeepc acpi_sleep = s3_biosãs3_mode DPI = 240 SRC = / android-2.3-RC1
ç§ã䜿çšãããªãã·ã§ã³ã¯æ¬¡ã®ãšããã§ãã
quiet root = / dev / ram0 androidboot_hardware = generic_x86 acpi_sleep = s3_biosãs3_mode DPI = 240 UVESA_MODE = 480x720 SRC = / android-2.3-RC1
奜ããªååãå ¥åããŠãã ããã
èµ·åæã«è§£å床ãéžæãããå Žåããããè¡ãããšãã§ããŸãïŒ
quiet root = / dev / ram0 androidboot_hardware = generic_x86 acpi_sleep = s3_biosãs3_mode vga = ask SRC = / android-2.3-RC1
menu.lstïŒïŒwqïŒãä¿åããVirtualBoxã¡ãã¥ãŒã䜿çšããŠä»®æ³ãã·ã³ãåèµ·åããŸãã
ããã§ãAndroidä»®æ³ãã·ã³ãèµ·åã§ããŸããããã¯ãé»è©±ã®ããã«èŠããŸãã
ä»®æ³ãã·ã³ã䜿çšããããã®ããã€ãã®ãã³ãïŒ
- Androidç»é¢ã«ããŠã¹ã衚瀺ãããªãå Žåã¯ãVirtualBoxã¡ãã¥ãŒã䜿çšããŠããŠã¹çµ±åãç¡å¹ã«ããŸãïŒãã¹ã+ Iãã¿ã³ïŒã
- Windowsãã¿ã³ã¯ãAndroidã®ããŒã ãã¿ã³ã«å¯Ÿå¿ããŠããŸãã
- Escã¯Androidã®æ»ããã¿ã³ã«å¯Ÿå¿ããŸã
- F2ã¯ã¡ãã¥ãŒãã¿ã³ã«å¯Ÿå¿
- F3ã¯æ€çŽ¢ãã¿ã³ã«å¯Ÿå¿
- Alt + F1-ã³ã³ãœãŒã«ã¢ãŒãã«åãæ¿ããŸã
- Alt + F7-GUIã¢ãŒãã«åãæ¿ããŸã
AndroidãAVDãããã³Eclipseä»®æ³ãã·ã³ã®æ¥ç¶
ç®æšã¯ãEclispeã®æ°ããä»®æ³ãã·ã³ã䜿çšããŠã¢ããªã±ãŒã·ã§ã³ããã¹ãããã³ãããã°ããæ©èœã§ããã ãããæ©èœããããã«ã¯ãã¡ã€ã³ã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ïŒEclipseãå®è¡ãããŠããïŒãšã²ã¹ãVMã®éã«ãããã¯ãŒã¯æ¥ç¶ãæ§æããã®ã¯é¢åã§ãã VirtualBoxã®ãããã¯ãŒã¯èšå®ã«ã¯ãããã€ãã®èšå®ããããŸãã
- ããªããžã¢ãŒãã䜿çšïŒåäœããã¯ãã§ãããã¡ã€ã³OSã§èµ·åããã«ã¯DHCPãå¿ èŠã«ãªãå ŽåããããŸã
- ãã¹ããªã³ãªãŒãããã¯ãŒã¯ïŒãã¹ããã·ã³ãšã²ã¹ããã·ã³éã«ä»®æ³ãããã¯ãŒã¯ãäœæããŸãã ããã¯äœ¿çšããæãç°¡åãªãªãã·ã§ã³ã§ã
![](https://habrastorage.org/storage1/02a1d86f/212d7b8f/e5a19002/aaf5dad8.png)
ãããã¯ãŒã¯ãæ§æãããããä»®æ³ãã·ã³ãåèµ·åããã³ãã³ãã©ã€ã³ã¢ãŒãïŒAlt + F1ïŒãå ¥åããŠã次ãå ¥åããŸãã
netcfg
ããã«ãããä»®æ³ãã·ã³ã®çŸåšã®IPã衚瀺ãããŸãã éåžžãã²ã¹ããã·ã³ã®å Žåã¯192.168.56.101ã®ããã«ãªããã¡ã€ã³ãã·ã³ã¯ã¢ãã¬ã¹192.168.56.1ãååŸããŸãã
ã¡ã€ã³ãã·ã³ã§ã³ãã³ãã©ã€ã³ãéããAndroidã®platform-toolsãã£ã¬ã¯ããªã«ç§»åããŸãã
./adb connect 192.168.56.101
ããã«ãããä»®æ³ãã·ã³ãæ°ããããã€ã¹ãšããŠç»é²ãããŸãã
![](https://habrastorage.org/storage1/99139c32/f6eadd2c/6494e8be/d707d7f1.png)
ããã§ãEclipseããã¢ããªã±ãŒã·ã§ã³ãçŽæ¥èµ·åããã³ãããã°ã§ããŸãã
ã芧ã®ãšãããé床ã®å¢å ã¯éåžžã«é¡èã§ãã
- VMã®èµ·åã«ã¯30ç§ã§ã¯ãªã2ç§ããããŸã
- ãããã°ã¢ãŒãã§ãã£ãŠããã¢ããªã±ãŒã·ã§ã³ã¯éåžžã«è¿ éã«èµ·åããŸãïŒARMãšãã¥ã¬ãŒã¿ã«åºæã®ãã¬ãŒãã¯ãããŸããïŒ
SDã«ãŒããè¿œå
http://www.android-x86.org/documents/sdcardhowtoã«ããããã¥ã¡ã³ãã䜿çšããŸã ã
ãã¡ã€ã«ãSDã«ãŒããšããŠäœ¿çšããŸã
Androidã³ãã³ãã©ã€ã³ããïŒ
dd if=/dev/zero of=/data/sdcard.img bs=1024 count=65536 (64MB image) losetup /dev/block/loop7 /data/sdcard.img newfs_msdos /dev/block/loop7
次ã«ãVMããããã°ã¢ãŒãã§åèµ·åããèªã¿åã+æžã蟌ã¿ã¢ãŒãã§ããŒãã£ã·ã§ã³ãã¢ã³ããŠã³ãããmenu.lstãç·šéããŠ1ã€ã®ã«ãŒãã«ãã©ã¡ãŒã¿ãŒãè¿œå ããŸãã
SDã«ãŒã= /ããŒã¿/ sdcard.img
å¥ã®ã»ã¯ã·ã§ã³ã䜿çšããŸã
ããã«ã¯ããå°ãäœæ¥ãå¿ èŠã§ãã
ãŸããVirtualBoxã§æ°ããããŒããã©ã€ããäœæããä»®æ³ãã·ã³ã«æ¥ç¶ããå¿ èŠããããŸãã
次ã«ããããã°ã¢ãŒãã§ãã·ã³ãèµ·åããŸãã fdiskã䜿çšããŠããŒãã£ã·ã§ã³ãäœæããŸãã ã»ã¯ã·ã§ã³ãäœæããããããã©ãŒãããããå¿ èŠããããŸãã
newfs_msdos /dev/sdb1
次ã«ãmenu.lstãç·šéããŠãã©ã¡ãŒã¿ãŒãè¿œå ããŸãã
SDã«ãŒã= sdb1
ãã¹ãç°å¢ãšããŠAndroid_x86ã䜿çšããå°è±¡
䜿çšãã
ä»®æ³ãã·ã³ãæåŸ ã©ããã«åäœããŠããéãéãã®é床ã«å ããŠãç¹å¥ãªãã®ã«æ°ä»ããŸããã§ããã ãã¹ãŠã®Androidãããžã§ã¯ããæ£ããã€ã³ã¹ããŒã«ãããŸããã SDKãã«ãã®ãµã³ãã«ãããžã§ã¯ãã¯æ£åžžã«åäœããŸãã
å¯äžã®é¡èãªã°ãªããïŒã®ã£ã©ãªãŒã¢ããªã±ãŒã·ã§ã³ïŒCoolirisïŒãå£ããŠããŸããæåŸã®ãã€ããªãŒãã«ãã§è©ŠããŸãã-å°ãè¯ããªããŸãããããŸã åé¡ãæ®ã£ãŠããŸãã
å¥ã®å¥åŠãªç¹ïŒçŽ10ïŒ ã®å Žåãä»®æ³ãã·ã³ã¯èµ·åãããåèµ·åããå¿ èŠããããŸãã ããŠã³ããŒãã¯éåžžã«é«éã§ãããããããã¯å®éã«ã¯æ°ã«ãªããŸãããããšã«ããåé¡ãäœã§ããããç解ããããšããŸãã
ã¹ããŒã
ããã§ãéãã¯èçŒã§èŠãããšãã§ããŸãã
ãã¹ãŠãã©ãã ãå éããããæ確ã«ããããã«ãããã€ãã®æ°å€ã瀺ããŸãã
![](https://habrastorage.org/storage1/d27afffa/640f6063/f21c55fb/bba460c8.png)
ARMã®Androidãšãã¥ã¬ãŒã¿ã¯Nexus Oneã®çŽååã®é床ã§åäœããAndroid x86ã¯çŽ2åã®é床ã§åäœããŸãã