我想要通知任何传入和传出语音呼叫的代码。我需要抓住以下所有内容:
如果我可以获得更多联系信息,特别是联系人姓名,如果电话号码与手机联系人列表中的某个人匹配,那么这也是非常光滑的,但该部分是可选的。
我需要我的代码才能在通话结束后立即获取此信息。也许我只是不是在寻找正确的术语,但我很难找到任何有关如何实现这一目标的例子。
如果某人可以提供完成此操作的代码示例,以及我在清单文件中需要的权限和任何类型的广播接收器类型,那就太棒了。
答案 0 :(得分:4)
通过在清单中设置android.intent.action.NEW_OUTGOING_CALL
权限,您可以通过收听android.permission.PROCESS_OUTGOING_CALLS
广播事件来直接观看拨出电话。
我想这应该适用于其他设备;至少在我的HTC Hero上,这给了我一个Intent
个额外的内容,包括被叫的电话号码,联系人的姓名加上联系人的URI和被叫的个人号码。
至于获取有关来电或未接来电(以及实际拨出电话)的完整信息,我认为Mark提及的解决方案是观看CallLog
内容提供商的更改,或者在相关{{1}之后进行投票事件已被解雇。
答案 1 :(得分:1)
PhoneStateListener
和CallLog
内容提供商会为您提供最多(如果不是全部)所需内容。