监测闹铃
来源:互联网 发布:淘宝 库客运动 编辑:程序博客网 时间:2024/04/30 12:03
CS001120
开发伙伴平台:
S60 3rd Edition
详细描述
RASCliSession提供了一个简单有效的方法可以用来检测闹铃服务事件。包括对闹铃的修改事件触发等。这里包括时钟和日历闹铃的处理。
这个代码片段需要ReadUserData, WriteUserData, ReadDeviceData和WriteDeviceData能力。这里光自签名是执行不了的需要开发者证书才行。
Contents
[hide]
1 MMP文件
2 头文件
3 源文件
4 后记
[edit] MMP文件
需要下列能力和链接库:
CAPABILITY ReadUserData WriteUserData ReadDeviceData WriteDeviceData
LIBRARY alarmclient.lib LIBRARY alarmshared.lib
[edit] 头文件
#include <e32base.h>
#include <ASCliSession.h>
class CCalAlarmObserver : public CActive
{
public:
void ConstructL();
CCalAlarmObserver();
~CCalAlarmObserver();
protected:
void DoCancel();
void RunL();
private:
void StartMonitoring();
private:
MMyLogCallBack& iCallBack;
RASCliSession iASCliSession;
TAlarmId iAlarmId;
};
[edit] 源文件
#include <ASShdDefs.h>
#include <ASShdAlarm.h>
CCalAlarmObserver::CCalAlarmObserver():CActive(EPriorityStandard)
{}
CCalAlarmObserver::~CCalAlarmObserver()
{
Cancel();
iASCliSession.Close();
}
void CCalAlarmObserver::ConstructL()
{
CActiveScheduler::Add(this);
iASCliSession.Connect();
StartMonitoring();
}
void CCalAlarmObserver::StartMonitoring()
{
iASCliSession.NotifyChange(iStatus, iAlarmId);
SetActive();
}
void CCalAlarmObserver::RunL()
{
switch(iStatus.Int())
{
case EAlarmChangeEventState:
break;
case EAlarmChangeEventStatus:
break;
case EAlarmChangeEventCharacteristics:
break;
case EAlarmChangeEventAlarmDeletion:
break;
case EAlarmChangeEventAlarmAddition:
break;
case EAlarmChangeEventTimerExpired:
break;
//.... Check other states is needed
default:
break;
};
TASShdAlarm allarm;
if(iASCliSession.GetAlarmDetails(iAlarmId,allarm) == KErrNone)
{
// allarm.Status()
// allarm.State()
// allarm.NextDueTime()
// ...
}
StartMonitoring();
}
void CCalAlarmObserver::DoCancel()
{
iASCliSession.NotifyChangeCancel();
}
[edit] 后记
当你开始监测后,每个事件都会调用RunL函数,其中iStatus为可能的错误代码。但这里iStatus为非负数,表示事件状态。
这里的闹铃ID存储的是闹铃id变量,当调用NotifyChange时将会给闹铃服务。使用这个ID我们可以获得闹铃的详细信息。
- 监测闹铃
- 闹铃
- 闹铃
- 闹铃软件
- 闹铃设置
- 闹铃问题
- 简易闹铃java源码
- 多媒体(闹铃)
- android 闹铃服务
- android闹铃服务
- 相机,闹铃,铃声
- Android 闹铃的实现
- android手机闹铃
- android闹铃简单实现
- Android 锁屏时也启动闹铃
- android提醒闹铃
- Android 闹铃定时器实现
- 半夜起床写闹铃程序
- SpringSide学习经历
- CAM350
- Hibernate一对多映射
- android 如何进入设备后台的data文件夹
- oracle体系结构一
- 监测闹铃
- SAP基本计量单位更改
- crontab调用shell访问oracle问题
- eclipse点击按钮无响应
- oracle体系结构二之表空间、方案、段、区、块
- 时钟设置API
- SAP MM 移动类型
- oracle连接字符串解析
- 动态检测设备拔插