Symbian 自启动

Symbian 自启动 2009-05-08 10:28 假设你的应用ID为:ef37946b 1) 在data下新建一个文件, [ef37946b].rss(注意加上[]) #include RESOURCE STARTUP_ITEM_INFO dispatcher { executable_name = "!://sys//bin//AutoStart.exe"; recovery = EStartupItemExPolicyNone; } 此处的AutoStart.exe是你的应用程序文件名。 注:笔者视图通过此处改为其他应用程序名启动,但是没有成功。 2) 在mmp文件中增加以下代码 START RESOURCE [ef37946b].rss TARGETPATH /private/101f875a/import HEADER END 确保: LANG SC CAPABILITY ReadUserData 注意“/private/101f875a/import”不能够变。 3) 在pkg文件中增加以下代码 "$(EPOCROOT)Epoc32/Data/z/private/101f875a/import[ef37946b].rSC" - "!:/private/101f875a/import/[ef37946a].rSC" 如果是采用carbidec++2.0编译,那么你可以使用上述代码 如果是使用makesis命令行打包或者使用.Net编译,那么你需要修改成绝对路径,路径名视你的安装目录而定。 例如: "C:/Symbian/9.1/S60_3rd_MR/Epoc32/Data/z/private/101f875a/import[ef37946b].rSC"-"!:/private/101f875a/import/[ef37946a].rSC" 有时候是否自启动需要通过配置来由用户控制,做法如下: 第一步: XXXX_reg.rss中: APP_REGISTRATION_INFO增加opaque_data = r_startup_type; 并在该文件中定义 RESOURCE NUMBER_INT8 r_startup_type { value = 1; } 这还需要包含 第二步: AppUi中重写TBool ProcessCommandParametersL(CApaCommandLine &aCommandLine); TBool CXXXXAppUi::ProcessCommandParametersL(CApaCommandLine &aCommandLine) { if (aCommandLine.OpaqueData().Length() > 0) { // 手动启动 } else { // 自启动 // TODO: 读取配置.. if (自启动配置为关闭状态) { Exit(); } } return CEikAppUi::ProcessCommandParametersL(aCommandLine); } 今天(2009-10-21)碰到安装到Card Memory后无法自启动的情况,但安装到Phone Memory是可以的。原因可参照:http://www.forum.nokia.com/document/Cpp_Developers_Library/GUID-96C272CA-2BED-4352-AE7C-E692B193EC06/html/Startup_List_Management_API4.html#Startup_List_Management_API_17 须将[12345678].rsc和要自启动的exe和相关文件在PKG中硬编码安装到Phone Memory。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值