S60 3.0上的程序安装后启动和程序开机自动运行

<1>安装后启动运行.

在S60 2.x和S60更早的版本上可以在pkg文件里使用"FILERUN,RUNINSTALL,RUNWAITEND" 指令,实现安装后的启动执行.

如:下面的安装包在安装完成以后会执行一个叫other的app完成一些特殊的任务.

//for S60 2.x or former

"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp.app"  -"!:/system/apps/mymainApp/mymainApp.app"
"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp.rsc"         -"!:/system/apps/mymainApp/mymainApp.rsc"
"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp_caption.rsc" -"!:/system/apps/mymainApp/mymainApp_caption.rsc"
"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp.aif"         -"!:/system/apps/mymainApp/mymainApp.aif"

"other.APP" -"!:/system/apps/mymainApp/other.APP" ,FILERUN,RUNINSTALL,RUNWAITEND

如果需要主程序在安装完成以后启动执行, 则只需要如下的pkg文件格式即可:

"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp.rsc"         -"!:/system/apps/mymainApp/mymainApp.rsc"
"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp_caption.rsc" -"!:/system/apps/mymainApp/mymainApp_caption.rsc"
"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp.aif"         -"!:/system/apps/mymainApp/mymainApp.aif"

"C:/Symbian/6.1/Series60/Epoc32/Release/armi/urel/mymainApp.app"  -"!:/system/apps/mymainApp/mymainApp.app",FILERUN,RUNINSTALL,RUNWAITEND

在S60 3.0上如果要想实现同样的效果pkg文件里必须使用"FILERUN,RUNINSTALL"指令的简写形式:

如下:

//for S60 3.0 or latter
"C:/Symbian/9.1/S60_3rd_mr/Epoc32/data/z/resource/apps/Your.rsc"      -"!:/resource/apps/Your.rsc"
"C:/Symbian/9.1/S60_3rd_mr/Epoc32/data/z/resource/apps/Your_aif.mif" -"!:/resource/apps/Your_aif.mif"
"C:/Symbian/9.1/S60_3rd_mr/Epoc32/data/z/private/10003a3f/import/apps/Your_reg.rsc"   -"!:/private/10003a3f/import/apps/Your_reg.rsc"

"C:/Symbian/9.1/S60_3rd_mr/Epoc32/release/gcce/urel/Your.exe"       -"!:/sys/bin/Your.exe",FR,RI

注意,此时必须使用Symbian sign的证书来对该安装包进行sign, self-sign对FR,RI等指令无效.

<2>开机自动运行

在S60 2.x上的开机自动运行有多种方法,这里不在重复:

在S60 3.0上的开机自动运行需要按一下步骤实现:

1先建一个UID3.rss的文件
文件内容如下:


#include <startupitem.rh>

RESOURCE STARTUP_ITEM_INFO test
{
    executable_name = "!://sys//bin//HelloWorldBasic.exe";
    recovery = EStartupItemExPolicyNone;
}


其中executable_name 的值为开机要自动运行的目标程序的exe
文件保存为工程的UID3的值,后缀为.rss(如:mmp中 UID    0x0 0xA000017F就保存为A000017F.rss)


2在工程的mmp中加上刚建的A000017F.rss
如:

START RESOURCE A000017F.rss 
TARGETPATH   resource/apps

END 

 

3在pkg文件;Files to install后加上

"../../../epoc32/data/z/resource/apps/A000017F.rsc"                     -"c:/private/101f875a/import/[A000017F].rsc"

然后正常编译你的工程,最后需要注意的也是需要用symbian sign的证书对该安装包签名, self-sign无法实现开机自启动功能.

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值