×
Namespaces

Variants
Actions

允许预先安装在外部存储(如MMC卡)中的程序自动启动

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

文章
huwell 在 22 Oct 2007 创建
最后由 hamishwillee 在 15 Dec 2011 编辑

设备, 软件 版本: S60 3rd Edition


  • 详细描述

多媒体存储卡(MMC)或硬盘(HD)中预装程序的Stub SIS文件无法包含内嵌的SIS文件,也无法向SW安装程序组件的导入文件夹拷贝文件。这就意味着预装程序无法使用文档中“Startup List Management API Technical Specification”(S60第三版SDK内容)描述的方法向设备的启动列表添加内容。


  • 解决方案

将程序加入手机启动列表中所需要的资源文件,可以通过要更新的应用程序所启动的PU类型的SIS文件来向SW安装程序组件的导入文件夹进行拷贝。

下面是启动一个SIS文件的示例:

#include <APGCLI.H> // link against apgrfx.lib
 
RApaLsSession iApaLsSession;
 
...
 
_LIT( KAStartSISFileName2, "E:\\Autostarter_PU.SISx" );
 
TThreadId threadId;
 
TInt err = iApaLsSession.StartDocument( KAStartSISFileName2, threadId );
 
...

下列pkg文件中的内容,用来生成那个PU类型的SIS文件

; Autostarter_PU.pkg
 
;Language - standard language definitions
 
&EN
 
;Standard SIS file header
 
#{"Autostarter"},(0xe2c5bc1f),1,0,0, TYPE=PU
 
;Localised Vendor name
 
%{"Vendor Name-EN"}
 
;Unique Vendor name
 
:"Vendor Name"
 
;Supports S60 3rd Edition
 
[0x101F7961], 0, 0, 0, {"Series60ProductID"}
 
;Files to install
 
;
 
;Copy the autostart control resource file to SW Installer's 'Import'-folder
 
"\epoc32\data\[e2c5bc1f].rsc" -"c:\private\101f875a\import\[e2c5bc1f].rsc"

另一种解决方案: 除了上面使用PU补丁,还可以使用一种SP类型补丁。使用它的优点是,预装程序保持它不可移除的状态。缺点是它会被程序管理当做一个单独的程序实体显示,这样有可能会被删除,这样自动启动的性能就会丢失了。

This page was last modified on 15 December 2011, at 13:07.
18 page views in the last 30 days.