Unable to add window token null is not valid is your activity running

莫名其妙的报错

 

错误原因是不在主线程调用了弹窗方法

 

解决方法很简单

 

创建Handler

static final int REFRESH_COMPLETE = 0X1112;
    private Handler mHandler = new Handler() {public void handleMessage(android.os.Message msg) {switch (msg.what) {case REFRESH_COMPLETE:ObServernotice.getInstance().notifyObserver(211,1,"",null);
//todo...在这里调用弹窗break;}}};

子线程调用mHandler

if (MainActivity.this instanceof Activity) {if ( (MainActivity.this).isFinishing()) {return ;}
}
mHandler.sendEmptyMessageDelayed(REFRESH_COMPLETE, 1000);

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/414404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

01-Flutter移动电商实战-项目学习记录

01-Flutter移动电商实战-项目学习记录 一直想系统性的学习一下 Flutter,正好看到该课程《Flutter移动电商实战》的百度云资源,共 69 课时,由于怕自己坚持不下去(经常学着学着就不学了),故采用博客监督以记之…

02-Flutter移动电商实战-建立项目和编写入口文件

02-Flutter移动电商实战-建立项目和编写入口文件 环境搭建请参考之前写的一篇文章:Flutter_初体验_创建第一个应用 1、创建项目 采用AndroidStudio构建本项目,FIle>New>New Flutter Project… 创建后的项目如下图所示: 我们着重需要…

Android 倒计时——Timer和CountDownTimer的使用,实现启动,暂停,继续,重复,重设时长以及启动service后台倒计时

实现效果 单个倒计时功能 列表倒计时功能 自定义倒计时类 public class CountDownTimerSupport implements ITimerSupport {private Timer mTimer;private Handler mHandler;/*** 倒计时时…

03-Flutter移动电商实战-底部导航栏制作

03-Flutter移动电商实战-底部导航栏制作 1、cupertino_IOS风格介绍 在Flutter里是有两种内置风格的: material风格: Material Design 是由 Google 推出的全新设计语言,这种设计语言是为手机、平板电脑、台式机和其他平台提供一致&#xff…

plugin since you are using Gradle version 4.6 or above

Android studio项目在新的开发环境下打开时报错如下 解决方法如下: 1、目录选到Android状态 2、进入gradle.properties文件。 3、org.gradle.configureondemandfalse——————默认是true。改完false即可

[转]调试 smallcorgi/Faster-RCNN_TF 的demo过程遇到的问题

最近在调试faster R-CNN时,遇到了各种各样的问题。使用的算法库为https://github.com/smallcorgi/Faster-RCNN_TF 注:本文使用的是通过virtualenv 创建python虚拟环境进行调试,python 版本2.7,tensorflow 版本为tensorflow1.4-gpu…

04-Flutter移动电商实战-打通底部导航栏

04-Flutter移动电商实战-打通底部导航栏 关于界面切换以及底栏的实现可参考之前写的一篇文章:Flutter实 ViewPager、bottomNavigationBar界面切换 1、新建4个基本dart文件 在pages目录下,我们新建下面四个dart文件。 home_page.dart :商城首页UI页面…

【机器学习】--模型评估指标之混淆矩阵,ROC曲线和AUC面积

一、前述 怎么样对训练出来的模型进行评估是有一定指标的,本文就相关指标做一个总结。 二、具体 1、混淆矩阵 混淆矩阵如图: 第一个参数true,false是指预测的正确性。 第二个参数true,postitives是指预测的结果。 相关公式: 检测正…

05-Flutter移动电商实战-dio基础_引入和简单的Get请求

05-Flutter移动电商实战-dio基础_引入和简单的Get请求 这篇开始我们学习Dart第三方Http请求库dio,这是国人开源的一个项目,也是国内用的最广泛的Dart Http请求库。 1、dio介绍和引入 dio是一个强大的Dart Http请求库,支持Restful API、 Fo…

Jmeter——for循环控制器和if逻辑控制器

有时我们不仅仅需要用例按照简单的顺序跑,需要内嵌循环,或者条件分支,让某些用例在满足一定条件时才执行。 1、for循环控制器 此处记录两种应用的场景,一种是直接定义好要循环的变量,循环次数是固定的,写死…

06-Flutter移动电商实战-dio基础_Get_Post请求和动态组件协作

06-Flutter移动电商实战-dio基础_Get_Post请求和动态组件协作 上篇文章中,我们只看到了 dio 的使用方式,但并未跟应用关联起来,所以这一篇将 dio 网络请求与应用界面结合起来,当然这也是为以后的实战作基础准备,基础打…

Cannot merge new index 66395 into a non-jumbo instruction!,uses or overrides a deprecated API.

老项目运行没问题。一打包就报错 解决方法——添加dexOptions android {compileSdkVersion 27dexOptions{jumboMode true}

08-Flutter移动电商实战-dio基础_伪造请求头获取数据

08-Flutter移动电商实战-dio基础_伪造请求头获取数据 在很多时候,后端为了安全都会有一些请求头的限制,只有请求头对了,才能正确返回数据。这虽然限制了一些人恶意请求数据,但是对于我们聪明的程序员来说,就是形同虚设…

工作269:uni--客流分析优化

<template><view><view><view id"main"><!-- 第一步 设置盒子大小 --></view></view><view><view v-for"(item,index) in 10"><view style"display: flex;justify-content: space-between;…

09-Flutter移动电商实战-移动商城数据请求实战

09-Flutter移动电商实战-移动商城数据请求实战 1、URL接口管理文件建立 第一步需要在建立一个URL的管理文件&#xff0c;因为课程的接口会一直进行变化&#xff0c;所以单独拿出来会非常方便变化接口。当然工作中的URL管理也是需要这样配置的&#xff0c;以为我们会不断的切换…