如何在安装或运行时检查 S60 平台版本
2010-02-21 22:03:00 来源:WEB开发网问题描述:
所有的S60程序SIS安装包都带有一个Series60ProductID代表mandatory dependency。
这个dependency指名运行该程序所需要最小的S60平台版本,以防安装在老版本上。
Series60ProductID只能在安装时用来检查,并且只能中断安装或提示不兼容信息。我们有时需要一个单独的SIS包但可以根据不同的S60平台选择安装文件。下面的解决方案描述如何在一个pkg文件中处理这样的情况,同样也提供了一段示例代码演示了如何在运行中判断平台版本:
解决方案:
pkg文件中的平台版本判断部分,即使在IF模块中没有可用的属性来判断S60平台版本,我们也可以通过在ROM中的特定文件来处理.
每个Series60ProductID组件都作为一个单独的sis文件存在z:systeminstall目录下,按如下命名方式排列:
z:systeminstallSeries60v3.0.sis | S60 3rd Edition
z:systeminstallSeries60v2.8.sis | S60 2nd Edition, Feature Pack 3
z:systeminstallSeries60v2.6.sis | S60 2nd Edition, Feature Pack 2
z:systeminstallSeries60v2.1.sis | S60 2nd Edition, Feature Pack 1
z:systeminstallSeries60v2.0.sis | S60 2nd Edition
z:systeminstallSeries60v1.2.sis | S60 1st Edition (1.2)
z:systeminstallSeries60v1.1.sis | (n/a)
z:systeminstallSeries60v1.0.sis | (n/a)
z:systeminstallSeries60v0.9.sis | S60 v0.9
每个手机上都有一个与当前平台版本相关的关联文件,同样所有支持的老版本文件也有。例如,Nokia N70(2nd Edition, FP3)包含除了Series60v3.0.sis以外的文件,而Nokia E70(3rd Edition)只包含Series60v3.0.sis。
下列文件名可以用在pkg文件中:
#{"MyApplication"},(0x10000001),1,0,0
; Lowest supported S60 platform version is 2nd Edition
(0x101F7960), 0, 0, 0, {" Series60ProductID"}
; install common files for all supported platforms
; ...
IF EXISTS("z:systeminstallSeries60v2.8.sis")
; install 2nd Ed, FP3-specific files
ELSEIF EXISTS("z:systeminstallSeries60v2.6.sis")
; install 2nd Ed, FP2-specific files
更多精彩
赞助商链接