В Android, главной теме & HandlerThread
имеет Looper & MessageQueue по умолчанию. Я могу вызвать getLooper() для объекта handlerThread, но почему бы не включить главную тему?Как называть getLooper() на главной теме?
HandlerThread ht = new HandlerThread();
Looper htLooper = ht.getLooper(); // Works fine
Thread mainThread = Looper.getMainLooper().getThread();
Looper mainLooper = mainThread.getLooper(); // getLooper() doesn't compile.
В реальном сценарии, никогда не нужно будет использовать getLooper() на mainThread; мы можем просто позвонить Looper.getMainLooper()
. Я просто хотел бы знать, почему это не работает.
Я понимаю, с точки зрения Java, что Looper.getMainLooper().getThread()
возвращает java.lang.Thread
и класс резьбы не имеет getLooper() метод; но основной поток Android. Можно ли получить доступ к главной теме как HandlerThread
?