在我的应用程序中,我使用IntentService发送短信。

@Override

protected void onHandleIntent(Intent intent) {

Bundle data = intent.getExtras();

String[] recipients = null;

String message = getString(R.string.unknown_event);

String name = getString(R.string.app_name);

if (data != null && data.containsKey(Constants.Services.RECIPIENTS)) {

recipients = data.getStringArray(Constants.Services.RECIPIENTS);

name = data.getString(Constants.Services.NAME);

message = data.getString(Constants.Services.MESSAGE);

for (int i = 0; i < recipients.length; i++) {

if(!StringUtils.isNullOrEmpty(recipients[i])) {

try {

Intent sendIntent = new Intent(this, SMSReceiver.class);

sendIntent.setAction(Constants.SMS.SEND_ACTION);

PendingIntent sendPendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, sendIntent, PendingIntent.FLAG_UPDATE_CURRENT);

Intent deliveryIntent = new Intent(this, SMSReceiver.class);

deliveryIntent.setAction(Constants.SMS.DELIVERED_ACTION);

PendingIntent deliveryPendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, deliveryIntent, PendingIntent.FLAG_UPDATE_CURRENT);

SmsManager.getDefault().sendTextMessage(recipients[i].trim(), null, "[" + name + "] " + message, sendPendingIntent, deliveryPendingIntent);

} catch (Exception e) {

Log.e(TAG, "sendTextMessage", e);

e.printStackTrace();

Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG).show();

MainActivity.instance.writeToLogFile(e.getMessage(), System.currentTimeMillis());

}

}

}

}

}

在运行应用程序时,出现以下错误:

W/MessageQueue(7180): Handler (android.os.Handler) {42586468} sending message to a Handler on a dead thread

W/MessageQueue(7180): java.lang.RuntimeException: Handler (android.os.Handler) {42586468} sending message to a Handler on a dead thread

W/MessageQueue(7180): at android.os.MessageQueue.enqueueMessage(MessageQueue.java:294)

W/MessageQueue(7180): at android.os.Handler.enqueueMessage(Handler.java:618)

W/MessageQueue(7180): at android.os.Handler.sendMessageAtTime(Handler.java:587)

W/MessageQueue(7180): at android.os.Handler.sendMessageDelayed(Handler.java:558)

W/MessageQueue(7180): at android.os.Handler.post(Handler.java:323)

W/MessageQueue(7180): at android.widget.Toast$TN.hide(Toast.java:367)

W/MessageQueue(7180): at android.app.ITransientNotification$Stub.onTransact(ITransientNotification.java:55)

W/MessageQueue(7180): at android.os.Binder.execTransact(Binder.java:351)

W/MessageQueue(7180): at dalvik.system.NativeStart.run(Native Method)

我的SMSReceiver位于另一个类中。我该如何解决这个问题?谢谢;没错

java 线程 handler,java.lang.RuntimeException:处理程序(android.os.Handler)在死线程上向处理程序发送消息...相关推荐

  1. Android --- java.lang.RuntimeException: Can‘t create handler inside thread that has not called Loop

    报错信息如下: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.pr ...

  2. java.lang.RuntimeException: Can't create handler inside thread that has not

    在子线程中 调用了这句: Toast.makeText(UiUtils.getContext(), "正在下载"+name, Toast.LENGTH_SHORT).show(); ...

  3. java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()

    java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() ...

  4. android.os.log,android.os.Handler和java.util.logging.Handler之间的区别?

    从 the Android documentation开始: android.os.Handler: A Handler allows you to send and process Message ...

  5. java除了android,Java中是否有类似android中的android.os.Handler的类?

    没有一个默认.但是你可以让自己的自定义类来做类似的事情. 我做了一个这样的: import java.util.ArrayList; public class Handler extends Obje ...

  6. java检测安卓程序退出_java-我的Android应用程序的gameLoop线程在退出...

    问题是当我进入游戏并单击"主页"按钮时,gameLoop线程(我想)被弄乱了,然后弹出"不幸的是,"应用名称"已停止". 我已经制作了一个非 ...

  7. java异常标记_java.lang.RuntimeException:错误:0D0680A8:asn1编码例程:ASN1_CHECK_TLEN:错误的标记...

    我收到此错误(在标题中).我不确定为什么,请帮忙.代码如下: public static String decryptRSA(Context mContext, byte[] message) thr ...

  8. android融云监听消息,关于android:融云-IMkit-拦截或监听所有发送消息

    融云 IMkit 拦挡或监听所有发送音讯 最近集成融云 IMkit 的 SDK, 有一个需要是要监听所有收回去的音讯, 依据音讯类型拦挡或者进行批改. 在官网文档上着了一遍, 都没有找到, 偶尔在看 ...

  9. Android :java.lang.RuntimeException: takePicture failed

    错误堆栈: --------- beginning of crash 2020-09-14 13:43:51.723 10343-10343/com.xiaomi.micolauncher E/And ...

最新文章

  1. 51单片机常用知识点总结
  2. 哇塞!给 IDEA 换个酷炫的主题
  3. dart 替代java_Dart与Java的语法区别
  4. QT分页控件,开源,供大家使用
  5. Python使用鼠标滚轮调整tkinter应用程序窗口大小
  6. 序《戎马书生马福祥》
  7. 数据文件shrink_SQL Server中的Shrink TempDB数据库概述
  8. 企业应该如何运用商业智能
  9. perl 脚本学习-----两个文件排序之后输入到一个文件
  10. python中用来占位的语句是_MySQL / Python-gt;语句中占位符的语法错误?
  11. 牛逼!在IDEA里搞Spring Boot Mybatis反向工程,太爽咯~
  12. 你不专业并且自以为是,所以被坑
  13. 比较好用的Java模拟器,515最好的java模拟器
  14. Hibernate4.3在开发中的一些异常总结(持续更新)
  15. ckeditor5富文本数学化学方程式
  16. python对数据分组的方法
  17. 2.3 从外部置入图片 [Ps教程]
  18. echarts:在vue中使用渐变色
  19. python 抓取google play 各搜索词排名
  20. 如何高效做好今日舆情信息监测与搜集的方法

热门文章

  1. 7、菜单栏、工具栏、状态栏、浮动窗口、TextEdit
  2. python的jieba分词
  3. vue-cli 体验
  4. 精巧好用的DelayQueue
  5. Codeforces Round #378 (Div. 2) D. Kostya the Sculptor 分组 + 贪心
  6. UINavigationController与UITabbarController的样式
  7. 采用cookie简单实现文章顶/踩功能
  8. 最简单的BufferQueue测试程序(九)
  9. Ubuntu安装minicom串口工具
  10. Emacs取消键值绑定