【发布时间】:2020-05-14 08:50:30
【问题描述】:
我尝试获取默认拨号盘呼叫断开按钮单击以获取呼叫状态例如:活动、断开连接、断开连接等..
我需要呼叫状态而不使用 InCallService 类。因为 IncallService 类仅响应自定义拨号应用程序。愿你帮我找到合适的答案。谢谢你
【问题讨论】:
标签: android callback phone-call telecommunication telecom-manager
我尝试获取默认拨号盘呼叫断开按钮单击以获取呼叫状态例如:活动、断开连接、断开连接等..
我需要呼叫状态而不使用 InCallService 类。因为 IncallService 类仅响应自定义拨号应用程序。愿你帮我找到合适的答案。谢谢你
【问题讨论】:
标签: android callback phone-call telecommunication telecom-manager
听起来你可能想看看 Android PhoneStateListener 类:
假设您正在进行通话,当用户通过点击通话断开按钮结束通话时,您将看到状态变为空闲。
public void onCallStateChanged(int state, String incomingNumber) {
switch (state) {
case TelephonyManager.CALL_STATE_IDLE:
break;
case TelephonyManager.CALL_STATE_RINGING:
break;
case TelephonyManager.CALL_STATE_OFFHOOK:
break;
}
}
检查您是否有权获取所需的特定信息:
请注意,对某些电话信息的访问是受权限保护的。您的应用程序不会收到受保护信息的更新,除非它具有在其清单文件中声明的适当权限。如果权限适用,则会在相应的 LISTEN_ 标志中注明。
如果您想实际拦截按钮单击并执行除结束通话以外的其他操作,AFAIK 不支持此操作。
【讨论】: