Chinaunix首页 | 论坛 | 博客
  • 博客访问: 349311
  • 博文数量: 69
  • 博客积分: 3077
  • 博客等级: 中校
  • 技术积分: 602
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-11 09:40
个人简介

或以为孤权重,妄相忖度

文章分类

全部博文(69)

文章存档

2012年(1)

2011年(10)

2010年(39)

2009年(19)

我的朋友

分类: 嵌入式

2010-07-13 11:56:15

本文介绍如何向qtopia4.2.4手机平台中加入自己的应用程序
只是介绍了如何把编写好的程序加到桌面环境上,至于怎样编写程序,需要自己去研究

首先要分析qtopia4的源码目录结构,知道几个主要的目录


apps里面存放的是应用程序的桌面文件(desktop)
desktop文件描述了应用程序的类型,名称,图标,可执行程序等属性

里面默认有三个目录
Applications  Games  Settings

这就是桌面上这三个图标,进入以后,里面会有很多的应用程序

 

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

阅读(839) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~