如何识别Android中来电的开始和结束?

时间:2012-02-18 15:01:27

标签: android

我正在开发一个应该应用的应用程序:

  • 来电开始时开始。
  • 一旦通话结束,就结束。

更具体地说,我不希望应用程序在手机响铃时开始,但是当实际的会话开始时(也就是说,用户已接受来电)。

有谁知道怎么做?以及如何捕捉这些事件?

2 个答案:

答案 0 :(得分:1)

广播接收器将帮助您。 Here是官方谷歌开发者页面。

Here是一个小型教程。

答案 1 :(得分:1)

TelephonyManager提供了您想要的内容。

您应该创建一个BroadcastReceiver来监听ACTION_PHONE_STATE_CHANGED。当您在AndroidManifest.xml中声明它时,它将产生您的服务/活动。 当你产生它时,手机很可能正处于振铃状态。因此,您必须通过TelephonyManager.listen()注册PhoneState的进一步更改。通过这种方式,您可以注意到手机何时挂断以及何时返回空闲状态。

不要忘记请求READ_PHONE_STATE permission