首页 > 移动平台 > 详细

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

时间:2014-12-25 02:08:54      阅读:281      评论:0      收藏:0      [点我收藏+]

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

<intent-filter android:priority="500">
??? <action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>

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

Response Message
Received Message - this is what triggered the response

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

Received Message - triggers response

Response Message

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

下面是我代码:

?

[java]?view plaincopybubuko.com,布布扣bubuko.com,布布扣
?
  1. context.getContentResolver().registerContentObserver(??
  2. Uri.parse("content://sms"),??
  3. true,???
  4. smsObserver);??
  5. And?this?class:??
  6. private?class?SMSObserver?extends?ContentObserver??
  7. {??
  8. ????public?SMSObserver()??
  9. ????{??
  10. ????????super(null);??
  11. ????}??
  12. ???
  13. ????@Override??
  14. ????public?boolean?deliverSelfNotifications()?{??
  15. ????????return?true;??
  16. ????}??
  17. ???
  18. ????@Override??
  19. ????public?void?onChange(boolean?selfChange)?{??
  20. ????????super.onChange(selfChange);??
  21. ????????if(!selfChange)??
  22. ????????????//sendResponse??
  23. ????????context.getContentResolver().unregisterContentObserver(this);??
  24. ????}??
  25. ???
  26. ????@Override??
  27. ????public?void?onChange(boolean?selfChange,?Uri?uri)?{??
  28. ????????super.onChange(selfChange,?uri);??
  29. ????????if(!selfChange)??
  30. ????????????//sendResponse??
  31. ????????context.getContentResolver().unregisterContentObserver(this);??
  32. ????}??
  33. }??

?

?

处理方法

?

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

可以采用如下代码测试

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

但我不能使用非光标版本,短信/收件箱中的某些原因。的基于游标的版本的缺点是,它似乎需要保持开放的话,那么你必须确保在以后将其关闭。
此外,无论是版本被称为读状态发生变化时。

?

?


原文地址:http://www.itmmd.com/201411/141.html?
该文章由?萌萌的IT人?整理发布,转载须标明出处。

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

原文:http://aijuans.iteye.com/blog/2169839

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!