各位大神,为什么我在service里创建了一个新的线程
private class MyThread extends Thread
{
@Override
public void run()
{
Log.i("tag", "xxxxxxxx1");
monitor(Xservice.this);
Log.i("tag", "xxxxxxxx2");
MainActivity mainActivity = new MainActivity();
mainActivity.monitor(Xservice.this);
}
}
然后在这个线程里面,monitor里有个循环,为什么这个循环只进行一次就往下运行下面的代码了啊,在activity里运行这个循环还好好的,一到service里就就样,而且log里还说the application may be doing too much work on its main thread
只有这么多分了,求大神啊
------解决方案--------------------
你这为什么要写一个新的线程类呢,我看你的monitor(final Context context)这个方法里面又使用了runnable接口的。报的错就是你在main线程里面做的操作导致堵塞了
------解决方案--------------------
了解下main线程的looper机制,你的looper和主线程冲突了,请看帖子http://blog.csdn.net/singwhatiwanna/article/details/17361775,希望对你有帮助