当一个Activity退出 时,它的子线程还在运行,这时会出现异常问题:
解决方式,在线程中利用Flag标志位
public void run()
{
while(Flag)
{
......
}
}
主线程的OnDestory()方法中,利用下面的代码:
Flag = false;
try
{
ThreadSleep(500); // 等待子线程结束
handler.removeMessage(....);
}
网上有人推荐用HandlerThread也可以解决,后面再补充!