WEB开发网
开发学院手机开发Symbian 开发 symbian 开机自启动实现 阅读

symbian 开机自启动实现

 2010-05-06 17:24:00 来源:WEB开发网   
核心提示:主要有两个步骤:1,使用Startup List Management API实现开机自启动2,symbian 开机自启动实现,重载AppUI中的ProcessCommandParametersL()函数确定是否关闭(自启动后关闭==不启动)1.1 在data目录下创建一个boot resource file,名字为X

主要有两个步骤:

1,使用Startup List Management API实现开机自启动

2,重载AppUI中的ProcessCommandParametersL()函数确定是否关闭(自启动后关闭==不启动)

1.1 在data目录下创建一个boot resource file,名字为XXXX.rss, 其中XXXX为UID3。

#include

RESOURCE STARTUP_ITEM_INFO startexe

{

executable_name = \sys\bin\programToStart.exe; //换成你程序名字

recovery = EStartupItemExPolicyNone;

}

1.2更新你的MMP文件

SOURCEPATH ..data

START RESOURCE XXXX.rss

END

1.3更新你的PKG文件,中括号不要丢了!

“epoc32datayyyy.rsc”- “c:private101f875aimport[yyyy].rsc”

有以下几点限制:必须装在c盘,必须用开发者证书。

如果一切顺利,程序可以自己随着手机开机而自己启动了,但是如何让用户可以在程序中设置让程序不要随机启动呢?

2.1修改程序的注册文件YourAppName_reg.rss:

#include

#include

RESOURCE APP_REGISTRATION_INFO

{

//其他原有代码

opaque_data = r_startup_detect;

}

RESOURCE NUMBER_INT8 r_startup_detect

{value = 1;}

2.2 重载AppUI中的ProcessCommandParametersL()函数

Bool CMyAppUi::ProcessCommandParametersL( CApaCommandLine &aCommandLine )

{

if(aCommandLine.OpaqueData().Length() > 0)

{

// 用户手动启动,存在OpaqueData

}

else

{

// 程序自动启动,存在OpaqueData。

// 可以在这里判断是否设置为不自动启动, 调用Exit()函数退出

}

return CEikAppUi::ProcessCommandParametersL( aCommandLine );

}

Tags:symbian 开机 启动

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