或以为孤权重,妄相忖度
分类: 嵌入式
2010-07-13 11:56:15
本文介绍如何向qtopia4.2.4手机平台中加入自己的应用程序
只是介绍了如何把编写好的程序加到桌面环境上,至于怎样编写程序,需要自己去研究
首先要分析qtopia4的源码目录结构,知道几个主要的目录
apps里面存放的是应用程序的桌面文件(desktop)
desktop文件描述了应用程序的类型,名称,图标,可执行程序等属性
里面默认有三个目录
Applications Games Settings
这就是桌面上这三个图标,进入以后,里面会有很多的应用程序
我们把要添加的应用程序的desktop文件放到相应的目录下
看一下desktop文件的写法,以clock.desktop为例
[Translation]
File=QtopiaApplications
Context=Clock
[Desktop Entry]
Comment[]=A Clock Program <---描述
Exec=clock <---可执行程序
Icon=clock/Clock <---图标
Type=Application <---类型
Name[]=Clock <---名字
现在我要添加一个名为mytest的应用程序
在apps/Applications里创建一个名为"mytest.desktop"的文件
依照clock.desktip内容添写
[Translation]
File=QtopiaApplications
Context=Mytest
[Desktop Entry]
Comment[]=My Test Program
Exec=mytest
Icon=mytest/Mytest
Type=Application
Name[]=Mytest
再看pics目录,这里存放了程序所用的图标和图片文件
每个程序都对应了一个文件夹,存放这个程序所用的图标和图片
在这里新建一个"mytest"的目录
在qtopia4中,使用SVG格式的图片做为程序的图标,你需要制作一个SVG图标,或使用现成的SVG图标
把制作好的SVG图标放到mytest目录下,取名为Mytest.svg
src目录下存放的就是所有qtopia程序的源码
其中有libraries plugins tools 3rdparty server等构建qtopia环境的源码
应用程序的源码是:application games settings
把编写好的mytest源码放到application中
编写pro文件,格式如下:
qtopia_project(qtopia app)
TARGET=程序名
CONFIG+=qtopia_main no_quicklaunch
HEADERS = (头文件)
SOURCES = (源码文件)
desktop.files=指定桌面文件
desktop.path=桌面文件路径
desktop.hint=desktop
pics.files=指定图片文件
pics.path=图片文件路径
pics.hint=pics
可根据需要加入help service等属性
INSTALLS+=desktop pics
我的mytest.pro内容如下
qtopia_project(qtopia app)
TARGET=mytest
CONFIG+=qtopia_main no_quicklaunch
HEADERS = mytest.h
SOURCES = main.cpp \
mytest.cpp
desktop.files=$$QTOPIA_DEPOT_PATH/apps/Applications/mytest.desktop
desktop.path=/apps/Applications
desktop.hint=desktop
pics.files=$$QTOPIA_DEPOT_PATH/pics/mytest/*
pics.path=/pics/mytest
pics.hint=pics
INSTALLS+=desktop pics
然后需要改一下main.cpp文件,内容如下
#include "mytest.h"
#include
QTOPIA_ADD_APPLICATION("mytest", Mytest)
QTOPIA_MAIN
现在已经做好了mytest程序的移植准备
最重要的一步就是在编译目录里添加mytest程序,让编译系统能够编译mytest
修改src目录下的general.pri文件
在里面仿照
PROJECTS*=\
applications/addressbook \
applications/datebook \
applications/todo\
applications/calculator \
applications/camera \
applications/clock \
加入一句
applications/mytest \
这样就把这个程序加入编译目录了
同样,在这里可以裁剪程序,把不需要编译的程序都从这里删掉
配置编译安装qtopia
在qtopia安装目录 bin目录下就会有mytest可执行程序,在图形界面下Application里也会多出一个mytest的图标
如果以上这些都做成功了,在Application里出现自己添加的应用程序,并能正常运行,接下来就可以依次按照上面的方法加入其他的应用程序
修改桌面菜单的布局:
修改安装目录下的etc/defaultbuttons.conf文件
[Menu]
Rows=4
Columns=3
Map=123456789*0#
Default=5
1=Applications/camera.desktop
2=Applications/datebook.desktop
3=Applications
4=Applications/qtmail.desktop
5=Applications/addressbook.desktop
6=Games
7=Settings/Beaming.desktop
8=Applications/simapp.desktop{@/Telephony/Status/SimToolkitAvailable},Applications/calculator.desktop
9=Settings
*=Applications/mediarecorder.desktop
0=Applications/todolist.desktop
#=Documents
这个是默认的布局,Default=5 说明进入菜单时默认是选择哪一个图标
比如我要把mytest程序放到菜单上第2行第1列位置,就修改
4=Applications/mytest.desktop