紧急号码也能选卡拨打

这篇博客讨论了对Android系统中紧急呼叫功能的优化,涉及多个组件如CallsManager、CreateConnectionProcessor和TelephonyConnectionService。优化包括移除非紧急呼叫的SIM选择条件,调整makeRoomForOutgoingCall的参数,以及取消特定的日志打印和尝试计数调整。这些改动旨在确保紧急号码可以顺利拨打,同时不影响正常拨号流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

紧急号码也能选卡拨打

packages/services/Telecomm/src/com/android/server/telecom/CallsManager.java
packages/services/Telecomm/src/com/android/server/telecom/CreateConnectionProcessor.java
packages/services/Telecomm/src/com/android/server/telecom/NewOutgoingCallIntentBroadcaster.java
packages/services/Telephony/src/com/android/services/telephony/TelephonyConnectionService.java

1.    将CallsManager.startOutgoingCall()中的以下内容拿掉

if(需要SIM2也能紧急拨号的条件){
needsAccountSelection = PhoneAccountHandle == null && accounts.size() > 1 && isEmergencyCall;
if(!isEmergencyCall){
needsAccountSelection = PhoneAccountHandle == null && accounts.size() > 1;
}
}else{
needsAccountSelection = PhoneAccountHandle == null && accounts.size() > 1 && !isEmergencyCall;
}

2.    将CallsManager.placeOutgoingCall中的以下内容拿掉
If (!TelecomUtils.needSelectAccountForEcc(mContext)){
    Call.setTargetPhoneAccount(null); //将这一样去掉
}

3. 在TelephonyConnectionService.onCreateOutgoingConnection()中将selectPhoneBySpecialEccRule()去掉

4.并将if(makeRoomForOutgoingCall(call, false))修改成if(makeRoomForOutgoingCall(call, isEmergencyCall))
5. 请将CreateConnectionProcessor.process()中将mCall.getTargetPhoneAccount()的结果打印出来。
6. 将CreateConnectionProcessor.process() 中的adjustAttemptsForConnectionmanager() 和adjustAttemptsForEmergency() mark 掉

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值