通过Thread.currentThread()得到当前线程,通过Looper.getMainLooper().getThread()得到主线程,进行比较即可。
public boolean isMainThread() {
return Thread.currentThread() == Looper.getMainLooper().getThread();
}
另外,在Java中没有Looper对象,所以这种方法没用,可以通过Thread.getName(),来判断是否是主线程
public boolean isMainThread() {
return Thread.currentThread().getName().equals("main");
}