具体修改文件位置如下:
Telecomm\Service\src\com\android\server\telecom\ParcelableCallUtils.java
单卡情况下,来电界面都是有短信拒接的;
双卡时,来电的情况下,来电卡是确定的,如果要短信拒接的话,那也只能将短信发送到来电的那张卡。
但是google 默认设计在M版本为如果来电的卡和短信设置的卡不一致的话,就不显示 短信拒接图标,因为如果一但显示了短信拒接图片就会出现冲突:
如果短信设置中选择了每次询问,那如果来电拒接选择短信拒接的话,应该跳出短信选卡界面或者直接发送短信,都不合理。
如果短信设置中选择了卡1, 那如果是卡2来电, 如果短信拒接的话应该使用卡2发送短信,这与设置中也冲突。
代码位置: InCallController.java:
private ParcelableCall toParcelableCall(Call call, boolean includeVideoProvider) {
boolean isDefaultSmsAccount =
mCallsManager.getPhoneAccountRegistrar()
.isUserSelectedSmsPhoneAccount(call.getTargetPhoneAccount());
if (call.isRespondViaSmsCapable() && isDefaultSmsAccount) {
capabilities |= android.telecom.Call.Details.CAPABILITY_RESPOND_VIA_TEXT;
}
如果要修改直接可以将isDefaultSmsAccount 值改为true不管单卡双卡或者去掉isDefaultSmsAccount判断属性