pkg(安装包配置文件)

pkg文件也就是安装包配置文件,是制作Symbian OS安装程序的核心部分。

基本介绍

概述

pkg文件也就是安装包配置文件,是制作Symbian OS安装程序的核心部分。搜索它包含了制作安装文件所需要的全部信息,根据这个文件的内容,sis文件生成器(安装程序的扩展名是.sis)制作生成应用程序的安装程序,也就是.sis文件。

PKG文件中包含的各种信息包括供应商名称,软件开发人员,要从中复制的应用程序文件以及其他相关文件。PKG文件中包含的信息是使用‘makesis‘命令创建的。

.sis文件相当于PC中的setup.exe这样的程序,通过这个文件,Symbian OS的智能电话可以将应用程序部署到合适的位置,使得我们所编写的程序可以在手机中正常工作。

为了生成.sis文件,必须首先编写.pkg文件。因此制作Symbian程序安装文件的过程,实际上主要就是编写pkg文件的过程。pkg文件像Symbian的资源文件一样,有自己完整的语法体系,掌握了pkg文件的语法,就基本上掌握了制作安装程序的大部分知识,所以熟悉pkg文件的结构,对于制作安装程序来说,是非常重要的。

本文以一个最基本的pkg文件为例,介绍了一些经常使用的语法,并简单描述了根据该文件生成sis文件的方法。

举例

下面列出一个完整的例子。这个例子比较简单,但是会经常用到,基本上一些最一般的安装程序都会是这种格式。

; HelloWorldBasic.pkg ; ;Language – standard language definitions &EN ; standard SIS file header #{"HelloWorldBasic"},(0x10005B91),1,0,0 ;Supports Series 60 v2.0 (0x101F7960), 0, 0, 0, {"Series60ProductID"} ; "..//..//..//epoc32//release//thumb//urel//HelloWorldBasic.APP"-"!://system//apps//HelloWorldBasic//HelloWorldBasic.app" "..//..//..//epoc32//data//z//system//apps//HelloWorldBasic//HelloWorldBasic.rsc"-"!://system//apps//HelloWorldBasic//HelloWorldBasic.rsc"

这个pkg文件是完整的,只要把文件目录适当调整一下,就可以可以使用了。这段例子来自S60SDK2.1的例子代码。

下面对这个文件的各个部分依次做一些解释说明:

l以分号开始的行,是注释。这些注释主要是给开发人员看的,生成器会忽略它们。

l&EN,表示安装程序使用的语言。EN表示使用美国英语,具体的代码的意义可以在SDK中查到,这里不详细列出。sis文件支持多语言安装,可以在这里进行设置,比如,&EN,FR,IT,表示是多语言的。对于多语言的安装程序,有一些语法和规则与其对应,具体的使用方法请查阅SDK。如果你只是希望可以做出一个安装程序,那么使用&EN就可以,不过需要保证后面出现的字符串部分使用英文字母。

l#{"HelloWorldBasic"},(0x10005B91),1,0,0。这是标准SymbianSIS文件的头部。所有的pkg都必须包含这行,而且必须在语言设置的后面。其中HelloWorldBasic是程序的名字,在安装过程中,可能会使用。ox10005B91,是所开发程序的UID,具体点说就是mmp文件中UID项的后面那个数字。接下来的数字,依次是主版本号,副版本号,和创建号,这些号码用于安装程序的版本控制。

l(0x101F7960),0,0,0,{"Series60ProductID"}。这一句说明了这个程序在安装之前需要准备的组件,实际上就是要求必须是Series60的平台。如果还需要其它的组件,也需要在这里说明。0x101F7960,是组件的UID,它其实表示的是S602.0的平台,对于S602.1的平台,应该是0x101F9115。0,0,0分别是主副版本号和创建号,Series60ProductID则是当需要显示的时候用于向用户显示的说明文字。

l最后就是实际操作的语句了。第一个双引号中的是文件的源位置,它只的是编译后的文件在PC中的位置。你可以使用绝对位置,也可以像例子那样使用相对位置。第二个双引号中的是文件在目标机器中的位置。“!:”表示由用户来选择安装在哪个驱动器下面,如果不想由用户指定,可以使用“C:”,表示安装在电话的C驱动下面。这两行语句表示的意思就是将指定位置的文件复制到电话的指定位置中。还有很丰富的语法,请查看S60的SDK。

对于一般的要求来说,这些语法已经可以达到将程序安装到电话上的目的了。

SIS文件

可以使用SDK附带的Sisar来生成sis文件。Sisar可以将上述pkg文件导入到工程中,这样基本上大部分的设置都完成了,再做一些简单的Sisar所需要的设置,就可以生成sis文件了。

另外,也可以使用Sismake这个工具在命令行生成sis文件。它的语法很简单,主要是根据pkg文件的设置来生成sis文件。

密钥生成

私钥生成器(Private Key Generator,简称为PKG),是IBE体系中的核心部分,它的功能作用是:在IBE系统初始化时,产生主密钥(Master Key)和公开参数(Public Params),并公开发布Public Params ;根据用户的ID,为用户生成相应的私钥。 它的实现流程是:

Step 1:系统初始化。PKG生成主密钥和公开参数,保密主密钥,而公开参数需要公开。

Step 2:私钥生成。PKG根据主密钥和用户的ID生成用户的私钥。

Step 3:加密消息。用某实体的ID和公开参数计算公钥并加密消息。

Step 4:解密消息。实体通过私钥解密。

基于IBE下实体间的通信:实体A想和实体B进行安全通信:根据实体B的ID以及PKG发布的公钥参数,计算出实体B的公钥,加密信息后发送给实体B;如果实体B尚未从PKG获取自己的私钥,就从PKG获取自己的私钥;实体B通过私钥解密实体A发送的信息。

在实体从PKG获取自己私钥的过程中,PKG需要对实体身份进行鉴别:防止冒充者获取该实体的私钥;私钥只能由相应的实体获取,否则就没有秘密可言。

安装程序

在苹果系统Mac OS X中,pkg是很常见的安装包,类似Windows下的安装程序。

我们在Mac上安装软件,常常要通过pkg格式的安装包进行安装。它类似Windows下的安装程序,但是非常统一高效。通常pkg安装包都有欢迎、安装信息、许可协议、介绍、目的宗卷、安装和摘要等项目,有的pkg还有自定义选项或者注册软件的选项。

pkg安装包的制作

Mac下制作安装包的软件有XCode自带的PackageMaker、iceberg和packages。

国产手机操作系统(cos)软件格式。

该文章由作者:【隔山取火】发布,本站仅提供存储、如有版权、错误、违法等相关信息请联系,本站会在1个工作日内进行整改,谢谢!

发表回复

登录后才能评论