WEB开发网
开发学院手机开发Symbian 开发 将symbian pkg进行到底 阅读

将symbian pkg进行到底

 2010-05-10 17:30:00 来源:WEB开发网   
核心提示:[0x20000600], 0, 0, 0, {"Nokia N93 ID"}[0x20000605], 0, 0, 0, {"Nokia N93i ID"}[0x2000060B], 0, 0, 0, {"Nokia N95 ID"}手机型号的标识可以参考S

[0x20000600], 0, 0, 0, {"Nokia N93 ID"}

[0x20000605], 0, 0, 0, {"Nokia N93i ID"}

[0x2000060B], 0, 0, 0, {"Nokia N95 ID"}

手机型号的标识可以参考S60 Platform and device identification codes.

安装特定手机所需文件

可能我们的部分安装文件需要依赖用户手机而定,例如一个游戏开发者可能需要生成一个指定的DLL,以便支持3D加速。那么对没有3D加速的手机,

就只能安装标准的DLL,示例代码如下:

IF (MachineUID=0x20000600) OR (MachineUID=0x2000060B)

; If the device is Nokia N93 or N95, then install files in this block.

"epoc32eleasearmv5urelmydll_3d" -"!:sysinmydll.dll"

ELSE

; Otherwise install any files in this block.

"epoc32eleasearmv5urelmydll" -"!:sysinmydll.dll"

ENDIF

手机标识代码可以在这里找到S60 Platform and device identification codes.

安装指定平台的文件

可能我们部分安装文件依赖于手机的操作系统,例如第三版FP2就去掉了一些蓝牙连接库,这样的不同导致我们在安装时也需要区别对待,手机平台可以在 z:systeminstall文件夹中获取:

if exists("z:systeminstallSeries60v3.2.sis")

"Epoc32eleasegcceURELCommon_0x123123123_fp2.dll"-"C:sysincommon_0x123123123.dll"

else

"Epoc32eleasegcceURELCommon_0x123123123.dll"-"C:sysincommon_0x123123123.dll"

endif

安装条件

下列函数也可以使用在pkg中:

package()用来测试一个安装包是否存在;

exists()用来测试给定文件是否存在

appprop()获得注册表中的相关属性

DevProp()函数用来询问手机能力值,注意不是直接提供的名字属性

package():如果指定UID已经安装将返回true,否则返回false,下列代码表示如果UID为0x11223344那么将安装foo.txt文件

IF package(0x11223344)

"foo.txt"-"c:foo.txt"

ENDIF

exists(): 如果test.txt存在则返回true,将安装新的

if exists("c: est.txt")

"textexists.txt"-"!:privatex01234567exists.txt"

上一页  1 2 3 4 5  下一页

Tags:symbian pkg 进行

编辑录入:coldstar [复制链接] [打 印]
赞助商链接