重发彩信android CMCC入库,终端不支持短信和彩信重发的问题

本篇文章是一篇关于重发彩信的帖子

    1.       查看SMS重发的机制:main log: 只有在radio off  no service导致发送失败的情况下才会重传在hanldeSmsSent(),里头查找 result is RESULT_ERROR_RADIO_OFF/RESULT_ERROR_NO_SERVICE,有这2种情况存在代表SMS会重传,这部分功能请参考SmsReceiverService.java

    总结一下目前我们的重传机制:

    modem有两种重传:

    1. 发送CP_DATA时,没有等到CP_ACK, 会重传CP_DATA

    2. 如果SMS over CS or PS, 传送失败,手机遇实验另外一个domain.

    APP重传有两种情况,

    每日一道理
曾经辉煌过,曾经凋零过,这可是你至死不渝的生活吗?我亲爱的母亲—大自然。多少次,我伏在地上,去聆听你沉重的脉搏声;多少次,我伫立在山前,去感受那松涛千年的浩瀚。你的豪壮,足以让中华民族腾飞;你的无私,谱写了一曲曲感人至深的千古壮曲。

    1. 发送失败的原因是no service

    2. 发送失败的原因是radio off时。

    这两种情况下APP会监听网络状态,网络OK后会实验发送这些失败的信息。

     

    测试方法方面:按照之前了解的情况,CMCC的测试应该是使用屏蔽箱。

    综上所述:该功能MTK是支撑的,您的测试环境还请改在屏蔽室中验证。

     

    2.       目前android default是支撑短信彩信主动重发的,这部分是spec划定的。代码中也有这样的设计。

        彩信的重发可参考DefaultRetryScheme.java ,会主动重发5次,每个重发时光点参考这个变量的设置:

        private static final int[] sDefaultRetryScheme = {

            0, 1 * 60 * 1000, 5 * 60 * 1000, 10 * 60 * 1000, 30 * 60 * 1000};

文章结束给大家分享下程序员的一些笑话语录: 古鸽是一种搜索隐禽,在中国快绝迹了…初步的研究表明,古鸽的离去,很可能导致另一种长着熊爪,酷似古鸽,却又习性不同的猛禽类——犤毒鸟

--------------------------------- 原创文章 By
彩信和重传
---------------------------------

原文地址:https://www.cnblogs.com/jiangu66/p/3111469.html