Symbian 来电拦截的实现
2010-03-07 19:59:00 来源:WEB开发网功能描述:
1.获取来电和去电的号码(此处用到S60 3rd的API);
2.对来电进行挂断(使用模拟按键和API挂断的方式);
3.修改手机的情景模式(改为静音);
4.打开/关闭音量和震动;
5.修改通话过程中听筒和话筒的音量;
6.打开/关闭免提;
7.打开/关闭手机背景光。
代码参考:(如有更好的,望指点)
#ifndef CTELDIAL_H_
#define CTELDIAL_H_
//etel core api
#include
#include
#include
//for the vibra and ring
#include
#include
#include
#include
#include //CR Keys To Control Phone Volume
#include //CRepository
//for the light
#include
//for the loud speaker
#include
#include
//simulation key
#include
class CTelDial: public CActive
{
public:
static CTelDial* NewL();
void GetDefaultTSY(TDes& aTSYName);
void StartObserve();
//the dial
void GetDialNumber();
void SetDialNumber(const TDes& aSetDialNumber);
bool CmpDialedNumber();
void OpenLoudSpeaker();
void SetCallVolumn(const TInt aspeakvol);
//the receive
void GetReceivedNumber();
void SetReceiveNumber(const TDes& aSetReceiveNumber);
bool CmpReceivedNumber();
//detect
void SetDetectNumber(const TDes& aSetDetectNumber);
bool CmpDetectNumber();
//light and vibra
void SetVibraAndRing();
void RecoverVibraAndRing();
//simulate key
void SimulateRedKey();
void SimulateRightKey();
//release
void ReleaseOneCall();
~CTelDial();
protected:
void RunL();
void DoCancel();
更多精彩
赞助商链接