S60中如何捕捉通话动作,获得当前通话的号码

Re: S60中如何捕捉通话动作,获得当前通话的号码。

Quote:
Originally Posted by sadsardine
S60中如何捕捉通话动作,获得当前通话的号码。
我弄了半天就是不得要领。
期望高手指点。多谢。

首先你要监听线路上的动作,然后得到来电后可以获得号码。

关于如何监听线路,你可以参考我之前回答的一个帖子,里面有详细的示例。
http://discussion.forum.nokia.com/fo...ad.php?t=67854

关于获得来电号码,这个有点罗嗦,因为这里要用到Nokia没有完全公开的函数(甚至SDK中都没有头文件),而且不同的Symbian版本方法还不同。
具体说来分两种方法,一种是Symbian 6.1手机(如N-Gage),这个需要用到RAdvGsmCall,首先用RCall打开来电线路,然后用RAdvGsmCall从RCall获得号码。代码如下:
Code:
   
iCall.OpenExistingCall(iLine, iName);
RAdvGsmCall::TRemotePartyInfo iRemoteInfo;
iCall.GetRemotePartyInfo(iRemoteInfo);
// 来电号码就在:iRemoteInfo.iNumber.iTelNumber

另一种情况是Symbian 7.0以上版本(如6600),这需要用到RMobileCall,原理是一样的,代码如下:
Code:
   
iCall.OpenExistingCall(iLine, iName);
RMobileCall::TMobileCallInfoV1 iRemotePartyInfo;
RMobileCall::TMobileCallInfoV1Pckg des(iRemotePartyInfo);
iCall.GetMobileCallInfo(des);
iRemotePartyInfo = des();
// 来电号码就在:iRemotePartyInfo.iRemoteParty.iRemoteNumber.iTelNumber

关于Symbian 6.1 RAdvGsmCall中需要用到的头文件smsetdlg.h comabs.h etelgprs.h etelbgsm.h 和 etelagsm.h,可以到这里下载:
http://www.fengbin.com/bbs/showthread.php?t=1827

关于Symbian 7.0 RMobileCall中需要用到的头文件和库ETELMM.H和ETELMM.lib可以到这里下载:
http://www.fengbin.com/bbs/showthread.php?t=1931

allyfeng
__________________
点背不能怨社会,命苦不能怪政府!
 
  • 0
    点赞
  • 0
    收藏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值