我对某事有点困惑。基本上,我正在生成一个线程,此外我还想在该线程中运行一个消息循环。我基本上是在做以下事情:这直接来自 Android Looper 类 API 文档。但是,我的应用程序总是卡在 Looper.loop() 并且永远不会从中返回。我目前的解决方法是在主线程(或 UI 线程)中创建一个处理程序,然后将消息发送到该线程。然而,为了清洁和让我的应用程序的流程有意义,我更愿意将我的消息发送到我正在创建的线程。
class LooperThread extends Thread {
public Handler mHandler;
public void run() {
Looper.prepare();
mHandler = new Handler() {
public void handleMessage(Message msg) {
// process incoming messages here
}
};
Looper.loop();
// The rest of the code below is a control loop
}
}
关于可能导致 Looper.loop() 永远不会返回的任何想法?