symbian c ++中的SMS调度

时间:2009-11-03 12:59:11

标签: symbian

如何通过在bachground中运行应用程序,从Symbian应用程序发出4天后发送短信。意味着应用程序在4天后发送短信?那可能吗?

请尽快回复。

1 个答案:

答案 0 :(得分:2)

我认为您不希望通过在后台运行应用程序4天来实现此目的。首先,如果手机在那段时间重新启动或电池电量耗尽,那么短信在再次开机时就不会被发送。

相反,您可以使用消息中心API来安排在特定时间发送SMS。

TMsvEntry类允许您调用:

SetScheduled(ETrue);
SetSendingState(KMsvSendStateScheduled);

然后你可以将TMsvEntry :: iDate设置为你想要发送消息的日期/时间。

This example显示如何发送短信,请尝试查看:

void CSmsEngine::SendSmsL(const TDesC& aAddr, const TDesC& aMsg)

注释掉SendSMSInThirdEditionL调用,因为您需要使用旧版API。 进行更改:

TMsvId CSMSExampleMtmsEngine::CreateSMSMessageL(const TDesC& aAddress,

                                              const TDesC& aMessage)

或者,如果您想要实现的是每4天发送一次SMS,那么您可以使用Symbian任务计划程序执行此操作。您可以创建一个发送SMS的EXE,然后创建一个每4天运行一次EXE的任务。它不会在后台运行任何东西,所以它不会浪费电池,即使你在两次运行之间重启手机也会记得运行任务,因为它会将计划持续到磁盘。

This example 显示如何创建任务 - 例如,在DoRunTaskL函数中,您可以发送SMS。

This example 显示如何安排任务本身。

因此,要开始发送短信计划,您需要执行类似的操作,但要将计划编辑为每4天一次。

我想说这是对Symbian的一个相对高级的编程挑战。所以,如果你是新手,我建议你在开始之前做一些教程,阅读书籍等。