[FAQ10908][Message]开启固定拨号FDN功能(无法发短信的原因),发送信息时如何做FDN check

 
开启了FDN功能,在发送信息时会去做FDN check,check通过才有机会继续跑发送流程。
发送短信和彩信做的FDN check不同。
 
 
[SOLUTION]
 
 
短信:
FDN check会去check SMSC号码和收件人号码,需要将SMSC号码和收件人号码添加到FDN list里,才会check通过,否则无法发送短信。
 
发送短信时会做SMSC和目标号码的check,是因为短信是走CS域,目标号码是要放在PDU里带给modem知道的,同时SMSC号码也是modem需要从sim卡里读出来,因此modem会知道短信目标号码和SMSC号码这两个信息,会做相关check。
 
彩信:
发送彩信会去check *99#这个号码,需要将*99# 这串号码添加到FDN list里,才能使用数据连接去发送彩信。
 
如果是MODEM 版本是LR9 及以后的版本 ,Modem会去掉*99#的检查。
这样AP 也不需要再加*99#添加到FDN list里.
需要将mms下的WorkingMessage.java中把下面与*99#相关的code删除: 
     private static final String FDN_FOR_ALLOW_DATA = "*99#";
 
        if (number.equals(FDN_FOR_ALLOW_DATA)) {
               Log.d(TAG, "isAbortSending, number = " + number);
               return false;
             }
 

发送彩信不会去做目标号码的check。
FDN check这件事是在modem做的,modem不会知道彩信的目标号码信息。
 因为彩信,他的协议和短信完全不同,他是走PS域,只需要modem帮忙激活PDP,再通过TCP将数据发送给网络。
因此modem只知道激活PDP这件事,在激活PDP的时候只需要check *99# 这个号码。(Modem 是LR9 及以后的版本 不会去Check 了)
也就是说,modem只管激活PDP时去check *99#,它不知道发送彩信的目标号码,modem 不知道彩信PDU的任何信息。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值