您的位置:首页 > 其它

symbian pkg文件详解

2011-03-18 16:32 197 查看
深红粗体字为注释。注:标识了(非必要)的区段在未设置信息时可以省略不写,其他区段则不可省略。
;编译信息开始(文件内注释用 ; 号来标识,如果PKG文件内包含双字节字符(比如中文,日文),则使用文本编辑工具
保存时,必须将PKG文件编码保存为UNICODE,否则无法正常编译。)


;PKG文件头部信息--开始


;语言支持(非必要)


&
EN
,
ZH

;安装程序标题,版本号及SIS文件UID


#{"
Language Name 1
","
Language Name 2
"},(
UID
),
0
,
0
,
0
,
SH
,
NC
,TYPE=
SISAPP

;开发平台兼容性校验


(
UID
),
0
,
0
,
0
,{"
Series60
ProductID
","
Series60ProductID
"}

;PKG文件头部信息--结束


;安装文件信息--开始


;单语言文件安装


"
PCSourceFile/MyApp.app
"-"
MobileDestFile/MyApp.app
"

;多语言文件安装(如果是单语言安装程序,则此段可省略)


{

"
PCSourceFile/MyApp.rEN
"

"
PCSourceFile/MyApp.rZH
"

}-"
MobileDestFile/MyApp.rsc
"

;必要组件校验(非必要)


(
UID
),
0
,
0
,
0
,{"
Language Name 1
","
Language Name 2
"}

;可选附加组件(非必要)


!({"
Language Name 1 for Add-on 1 (20kb)
","

Language Name 2 for Add-on 1 (20kb)
"},{"
Language Name 1 for Add-on 2 (20kb)
","

Language Name 2 for Add-on 2 (20kb)
"})

;条件判断(非必要,如果可选附加组件部分没有写,那么此部分也不需要写)


IF option1

"
PCSourceFile/addon/MyPic.gif
"-"
!:/System/Apps/MyApp/addon/MyPic.gif
"

ENDIF

;附加SIS文件(非必要)


@"
PCSourceFile
",(
0x12345678
)

;安装文件信息--结束

语言支持



界面语言支持
行,如果此行不写则取默认值&
EN

一个SIS文件内可以包含多个界面语言版本,但只能安装一种语言(安装时会自动根据你的系统
语言来安装相应的界面语言版本)

多个语言时用 ,
分隔

多语言安装程序时不可省略界面语言支持


·单一语言:&
ZH

·多语言:&
EN
,
ZH

参数值说明参数值说明参数值说明参数值说明
AF荷兰语(南非)FI芬兰语LS西班牙语(拉丁美洲)SF法语(瑞士)
AH埃塞俄比亚语FR法语LT立陶宛语SG德语(瑞士)
AM英语(美国)FS瑞典语(芬兰)LV拉脱维亚语SQ阿尔巴尼亚语
AR阿拉伯语GA爱尔兰语MK马其顿语SW瑞典语
AS奥地利语GD盖尔人语(苏格兰)ML马拉亚拉姆语(印度)SZ意大利语(瑞士)
AU英语(澳大利亚)GE德语MN蒙古语TA泰米尔语
BE俄语(白俄罗斯)GU古吉拉特语(印度)MO摩尔多瓦语TC中文(台湾)
BF法语(比利时)HE希伯来语MR马拉提语(摩剌陀语)TE泰卢固语(印度)
BG保加利亚语HI印地语(印度)MS马来语TH泰语
BL佛兰德斯语(比利时)HK中文(香港)MY缅甸语TI厄立特里亚语
BN孟加拉语HR克罗地亚语NN尼诺斯克语(挪威)TK土库曼语
BO藏语HU匈牙利语NO挪威语TL塔加拉语(菲律宾)
BP葡萄牙语(巴西)HY亚美尼亚语NZ英语(新西兰)TU土耳其语
CA加泰罗尼亚语(西班牙)IC冰岛语OS国际西班牙语VI越南语
CE英语(加拿大)IE国际英语PL波兰语UK乌克兰语
CF法语(加拿大)IF国际法语PO葡萄牙语UR乌尔都语
CS捷克语IN印度尼西亚语PA旁遮普语(印度、巴基斯坦)ZH中文
CT塞浦路斯语IT意大利语RO罗马尼亚语ZU祖鲁语
CY威尔士语JA日语RU俄语
DA丹麦语KA格鲁吉亚语(土耳其)SI斯里兰卡语
DU荷兰语KK哈萨克语SK斯洛伐克语
EL希腊语KM柬埔寨语SL斯洛文尼亚语
EN英语(默认值
)
KN坎拿达语(印度)SO索马里语
ET爱沙尼亚语KO韩语SP西班牙语
FA波斯语LO老挝语SR塞尔维亚语
安装程序信息


以#{"
RescoView
","
RescoView简体汉化版
"},(
0x11111111
),
4
,
10
,
0
为例说明:

1. #{"
RescoView
","
RescoView简体汉化版
"}
是安装程序标题

如果是单一语言的安装程序,则只写一个标题即可

如果是多语言安装程序,则需要按语言支持区段的语言顺序来依次(就是按&
EN
,
ZH
那个部分的顺序)输入各语言版本下的标题,标题名称用“,
”分割

·单一语言:#{"
RescoView简体汉化版
"}

·多语言:#{"
RescoView
","
RescoView简体汉化版
"}

2. (
0x11111111
)
是SIS安装文件的UID(自定义,SIS安装文件即是安装完成后在C:/system/install/
生成的相应SIS文件)

3. 4
,
10
,
0
是程序安装时显示的版本号,4
是主版本号,10
是次版本号,0
是build版本号;4
,
10
,
0
在安装时显示的就是4.10

4. SH
,
NC
是SIS文件选项(此处为非必要参数)

参数值(缩写)参数值(全称)说明
SHSHUTDOWNAPPS关闭应用程序
NCNOCOMPRESS不压缩
5. TYPE=
SISAPP
是SIS文件的类型(如果未指定,则默认为TYPE=
SISAPP


参数值(缩写)参数值(全称)说明
SASISAPP标准的安装程序(默认值)
SYSISSYSTEM此安装程序类型包含系统库或共享库文件注册(DLL或OPX文件),这些库文件在主程序卸载时会一并卸载
SOSISOPTION此安装程序类型安装时有可选组件,选择安装的组件在主程序卸载时会一并卸载
SCSISCONFIG此安装程序类型可以配置已存在的程序或服务,此类型打包时不应该包含任何新文件。只能用来配置安装或运行过程中的文件显示及增加新组件等等操作。在程序管理列表中不会显示配置程序的卸载,需要手动卸载
SPSISPATCH此安装程序类型会修复已存在的的程序,在程序管理列表中不会显示修复程序的卸载,需要手动卸载
SUSISUPGRADE此安装程序类型可以升级已存在的程序,但在程序管理列表中不会显示升级程序的卸载,需要用户手动删除文件或重新关联程序才能撤销升级
兼容性


此区段用来限制程序是否可以被正确安装在目标机型
上(比如防止NOKIA
Series60的软件
安装在UIQ的机型
上,避免造成程序错误)

以(
0x101F6F88
),
0
,
0
,
0
,{"
Series60ProductID
","
Series60ProductID
"}
为例说明:

1. (
0x101F6F88
)
是开发平台SDK的UID,也可以用具体机型的UID来限制

下表给出几个常见机型的平台UID及机型UID(由于能力问题,UID资料可能存在错误或不完全,请见谅)

以下对Symbian OS几个版本以及Series60的性能做一下概述

1.屏幕
显示象素:176×208
2.支持Java (J2ME/MIDP 1.0)及C++开发
3.便于简单短周期的开发程序
4.提供多样性并强大的应用程序开发框架
5.Series60 v2.x版本提供了对Java (J2ME/MIDP 2.0)及界面主题
模式的支持
6.Symbian OS 8.0提供了对3G网络
的支持
SDK版本UIDSeries60 SDK 0.9(Symbian 6.1)Series60 SDK 2.0(Symbian 7.0)Series60 SDK 2.0(Symbian 8.0)
手机
型号
UID手机型号UID手机型号UID
Series60 0.90x101F6F88Nokia 76500x101F6F87Nokia 66000x101F7963Nokia 66300x101F7964
Series60 1.00x101F795FNokia 3650/3660/36200x101F7962Nokia 66200x1020216B
Series60 1.10x101F8201Nokia N-Gage0x101F8A64Nokia 76100x101FD5DB
Series60 1.20x101F8202Nokia N-Gage QD
Series60 2.00x101F7960Siemens SX10x101F9071
Series60 2.10x101F9115Sendo-X0x101FA031
Series60 2.20x10200BABBenQ P300x101FD279
UIQ 2.00x101F617B
UIQ 2.10x101F61CE
2. 2
,
0
,
0
是平台的版本号,2
是主版本号,0
是次版本号,0
是build版本号,2
,
0
,
0
显示的版本就是2.0

注:此处的版本号要根据UID来作相应改动。

例:如果UID是0x101F6F88
(Series60 0.9),则主版本号则需要写成0
,次版本号也写0
即可

提示:

·如果只是希望安装在某一特定机型上(比如N-Gage),则UID处写N-Gage的UID,而平台版本处写0
,
0
,
0
即可

·如果希望安装程序能在多个机型上安装(向老版本机型兼容),则UID处写最老那个机型的平台版本的UID,平台版本号处参照上边第2
条写

例:假使希望可以安装在N7650,N3650,N-Gage,N-Gage QD,N6600上,则写为(
0x101F6F88
),
0
,
0
,
0

3. {"
Series60ProductID
","
Series60ProductID
"}
是平台类型校验字符串,用来目标机器的平台类型(UIQ或Series或其他类型)

平台类型字符串
Nokia Series60Series60ProductID
Nokia Series80Series80ProductID
Nokia Series90Series90ProductID
UIQ 2.0UIQ20PlatformProductID
UIQ 3.0UIQ30PlatformProductID
如果是单一语言的安装程序,则只写一个字符串即可

如果是多语言安装程序,则需要按语言支持区段的语言顺序来依次(就是按&
EN
,
ZH
那个部分的顺序)输入各语言版本下的校验字符串,字符串间用“,
”分割

·单一语言:{"
Series60ProductID
"}

·多语言:{"
Series60ProductID
","
Series60ProductID
"}

由于WDA上大家汉化的软件常见的只有

Nokia Series60 v1&v2

Nokia Series60 v3

UIQ v2

UIQ v3

所以如果上边的暂时不太懂的话,那就照以下两种类型情况下的例子改写即可

Nokia Series60 v1&v2 (
0x101F6F88
),
0
,
0
,
0
,{"
Series60ProductID
"}

Nokia Series60 v3 (
0x101F7961
),
0
,
0
,
0
,{"
Series60ProductID
"}

Nokia Series80 (
0x101F8ED2
),
0
,
0
,
0
,{"
Series80ProductID
"}

Nokia Series90 (
0x101FBE05
),
0
,
0
,
0
,{"
Series90ProductID
"}

UIQ 2.0 (
0x101F617B
),
0
,
0
,
0
,{"
UIQ20PlatformProductID
"}

UIQ 3.0 (
0x101F6300
),
0
,
0
,
0
,{"
UIQ30PlatformProductID
"}

转帖:http://www.cnblogs.com/deavey/archive/2010/04/09/1708199.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: