我有一段代码
list = geocoder.getFromLocation(
locationNetwork.getLatitude(),
locationNetwork.getLongitude(), 3);
,我试图通过 getFromLocation(LocationManager) 检索最后一个位置。由于这可能需要时间,我想将它放在与 UI 不同的线程上。但我很困惑应该使用什么。是否应该为此目的使用处理程序或异步任务。我很困惑何时应该在 Android 中使用处理程序和异步任务。任何人都可以用一些例子来解释我,场景..谢谢.!
问问题
2315 次
2 回答
0
看到这个 SO answer 它谈到了AsyncTask
,Handler
和的区别Thread
大多数情况下,如果您正在谈论创建一个Thread
. 如果您需要更新UI
,尤其是在后台Thread
运行时,那么我认为AsyncTask
更容易。它们都允许您继续使用它们,UI
同时它们在后台进行较重的提升。
您可以使用AsyncTask
并完成工作,doInBackground()
然后更新UI
任何其他AsyncTask
方法。如果您可能想Thread
在多个地方使用它,则将其设为单独的文件,Activity Context
如果需要,可以通过其构造函数传递给它。如果您只在一个中使用它,Activity
那么您可以将其设置为您的内部类,Activity
那么它将可以访问该类的所有成员变量Activity
于 2013-07-03T19:40:40.730 回答