我想在通话结束时发起一项活动。 找不到任何参考。我该怎么办?
答案 0 :(得分:2)
我没有尝试过这个,但我认为你可以运行一些服务(总是在后台运行),它使用PhoneStateListener。然后,您可以监听LISTEN_CALL_STATE
,其中显示“侦听设备呼叫状态的更改”。我认为这会在呼叫开始,停止等时触发。然后,当您收到呼叫结束的消息时,您可以从服务启动您的活动。
请注意,您可能需要跟踪状态,并且当您在CALL_STATE_OFFHOOK
时并且转到CALL_STATE_IDLE
呼叫结束时不会跟踪。
答案 1 :(得分:0)
您不必使用服务。
您可以在AndroidManifest.xml
文件中注册一个Receiver:
<receiver android:name=".callerID.IncomingCallReceiver" >
<intent-filter android:priority="0">
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>
在Java类中检查手机状态并启动所需的活动 - 不要忘记使用FLAG_ACTIVITY_NEW_TASK
启动它。