android开发,视频群聊引发短信异常 -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【www.unjs.com - 电脑资料】

    我正在开发一个收到信息后发送一条短信进行回复的程序(自动回复),当我的手机启动群聊程序,我的程序并没有成功的发送消息,于是我采用了如下的代码解决这个问题,

android开发,视频群聊引发短信异常

    在信息发送后,我专门记录了SMS日志,但是现在 短信接收优先级高于群聊,发送的消息被写入到用户的短信记录收到的消息后,他应该展示如下日志:

    Response Message

    Received Message - this is what triggered the response

    但是现在他展示的日志不对,如下

    Received Message - triggers response

    Response Message

    我感觉我的程序被群聊的程序影响了,扰乱了我的程序,现在不知道该如何处理.

    下面是我代码:

context.getContentResolver().registerContentObserver(Uri.parse(content://sms),true, smsObserver);And this class:private class SMSObserver extends ContentObserver{    public SMSObserver()    {        super(null);    }     @Override    public boolean deliverSelfNotifications() {        return true;    }     @Override    public void onChange(boolean selfChange) {        super.onChange(selfChange);        if(!selfChange)            //sendResponse        context.getContentResolver().unregisterContentObserver(this);    }     @Override    public void onChange(boolean selfChange, Uri uri) {        super.onChange(selfChange, uri);        if(!selfChange)            //sendResponse        context.getContentResolver().unregisterContentObserver(this);    }}

处理方法

    尝试使用 ContentObserver 监听群聊程序发送短信时的内容,或者测试其他手机,看看是否出现相同的问题

    可以采用如下代码测试

1 2 3 4 5 6 7 8context.getContentResolver().registerContentObserver(Uri.parse(content://sms),true, myContentObserver);或者cursor = context.getContentResolver().query(Uri.parse(content://sms/inbox),newString[] { SMS_ID, SMS_ADDRESS, SMS_READ },read = 0,null,null);cursor.registerContentObserver(myContentObserver);

    但我不能使用非光标版本,短信/收件箱中的某些原因,

电脑资料

android开发,视频群聊引发短信异常》(https://www.unjs.com)。的基于游标的版本的缺点是,它似乎需要保持开放的话,那么你必须确保在以后将其关闭。

    此外,无论是版本被称为读状态发生变化时。

最新文章