构建手机模拟环境

PC上调试应用程序比较在小机上方便得多,所以我们常常在PC上模拟运行手机软件,直到比较稳定后才到小机上测试。在PC上建立手机模拟运行环境是必不可少的,幸好在linux下,要建立手机模拟运行环境非常简单。本文介绍一下如何使用matchbox-nest建立手机模拟运行环境,这种方法适用于所有用QTGTK+DirectFB等可以将显示定向到X11上的系统。

 

这个模拟环境的工作原理很简单:

输入设备:对鼠标支持是直接的,X11会把鼠标事件转发给模拟器内的窗口。对模拟键盘的支持是通过X11Xtest扩展模块来实现的,Xtest本来是用于X11测试的,它可以模拟按键事件,把该事件发送给X11服务器。

 

输出设备:即显示输出,matchbox-nest运行了一个Xnest,它的位置和大小就是模拟的设备的屏幕的位置和大小。Xnest模拟了一个X11服务器,它支持X11所有的功能,但是它把显示输出定向到一个窗口上。让应用程序在Xnest模拟的X11服务器上运行,即所有应用程序都显示在一个指定的窗口上,这就达到了模拟的效果。

 

1.         安装Xnest软件包,它在FC第二张光盘上。

rpm –ivh xorg-x11-Xnest-6.8.2-31.i386.rpm

 

2.         下载matchbox-nest软件包。

libmatchbox-1.9.tar.bz2

matchbox-nest-0.3.tar.bz2

 

3.         编译安装matchbox-nest软件包

[root@localhost pcemu]# tar jxvf /mnt/hgfs/linux/gui/libmatchbox-1.9.tar.bz2

[root@localhost pcemu]# tar jxvf /mnt/hgfs/linux/gui/libmatchbox-1.9.tar.bz2

[root@localhost pcemu]# cd libmatchbox-1.9/

[root@localhost libmatchbox-1.9]# ./configure --x-includes=/usr/X11R6/include/ --x-libraries=/usr/X11R6/lib/

[root@localhost libmatchbox-1.9]# make;make install

[root@localhost libmatchbox-1.9]# cd ../matchbox-nest-0.3/

[root@localhost matchbox-nest-0.3]# export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

[root@localhost matchbox-nest-0.3]# ./configure --x-includes=/usr/X11R6/include/ --x-libraries=/usr/X11R6/lib/

[root@localhost matchbox-nest-0.3]# make;make install

 

4.         修改配置文件

[root@localhost matchbox-nest-0.3]# cd /usr/local/share/matchbox-nest/

[root@localhost matchbox-nest]# cp ipaq3800.xml se.xml

[root@localhost matchbox-nest]# cp /mnt/hgfs/linux/se.png .

编辑se.xml,设置模拟器的大小、屏幕位置和按键位置。

 

5.         运行模拟器

[root@localhost matchbox-nest]# export LD_LIBRARY_PATH=/usr/local/lib

[root@localhost matchbox-nest]# export DISPLAY=:0

[root@localhost matchbox-nest]# matchbox-nest -d se.xml

 

6.         运行应用程序。

[root@localhost lib]# export DISPLAY=:1

[root@localhost lib]# xcalc

(Xnest模拟的X11服务器默认的DISPLAY设置为:1,可以通过它的命令行参数调整)

 

7.         外观效果

 构建手机模拟环境_第1张图片

~~end~~

 

作者联系方式:李先静 <xianjimli at hotmail dot com>

你可能感兴趣的:(测试,服务器,Path,手机,library,gtk)