64得票2回答
AsyncTask:doInBackground()的返回值去哪了?

在调用 AsyncTask<Integer,Integer,Boolean> 时,doInBackground(Integer... params) 方法的返回值在哪里? 通常我们使用 new AsyncTaskClassName().execute(param1,param2....

62得票2回答
AsyncTask execute() or executeOnExecutor()?

execute()和executeOnExecutor()有什么区别? execute()默认以什么方式执行任务?(串行或并行?) 新的SDK >16 应该使用什么方法? 在任务数量不重要的情况下,使用并行执行(THREAD_POOL_EXECUTOR)比串行执行好吗?或者这取决于将要执行...

62得票2回答
Android UI线程消息队列分发顺序

在Android中,使用保留的Fragment来保存AsyncTask以处理配置更改是最佳方法之一。然而,在这个过程中,我对UI线程消息队列调用顺序产生了疑问。 例如: 发生配置更改,用户旋转设备。AsyncTask正在运行。 调用片段onDetach()。 AsyncTask的doIn...

61得票6回答
AsyncTask和Thread/Runnable的区别

我有一个让我感到困惑的问题。 假设我想在另一个线程中执行一些操作,比如获取GPS/位置信息,而根据SDK文档的推荐,必须使用后台线程进行。 因此,我的问题是: 通过AsyncTask在后台创建一个Thread 与 创建Thread thread1 = new Thread(new ...

60得票3回答
在Android中的WeakReference/AsyncTask模式

我有一个关于在Android中经常出现的简单情况的问题。 我们有一个主活动,我们调用一个AsyncTask并带有MainActivity的引用,以便AsyncTask可以更新MainActivity上的视图。 我将事件分解为以下步骤: - MainActivity创建AyncTask,传...

60得票6回答
如何在安卓中停止异步任务线程?

我想要从另一个 AsyncTask 线程中停止一个 AsyncTask 线程。我已经尝试过使用 new AsyncTask.cancel(true) 来停止后台进程,但它没有停止。 有人可以帮我解决这个问题吗?

60得票5回答
为什么在使用runOnUiThread的同时要使用Handlers呢?

我曾经接触过 Handlers 和 runOnUiThread 的概念。但对我来说,它们之间的区别仍然存在疑惑。 它们都旨在从后台线程执行UI操作。但是,在选择两种方法之间需要考虑哪些因素。 例如,考虑一个在后台执行Web服务的RunnableThread,现在我想更新UI。 更新UI的...

59得票12回答
加载WebView时的Android进度条

在我的应用中,我有一个WebView,可以加载来自互联网的任何URL。由于网络缓慢,有时页面需要很长时间才能加载,用户只会看到一个空白屏幕。 我想在WebView加载时显示一个ProgressBar,并在WebView完全加载后隐藏ProgessBar。 我知道如何使用ProgressBa...

59得票5回答
如何在固定时间间隔后重复执行异步任务

如何使异步任务每隔一段时间执行一次,就像定时器一样...实际上,我正在开发一个应用程序,它将自动下载来自服务器的所有最新未读问候,并且为此我必须在一些固定的时间间隔后从服务器检查更新....我知道可以很容易地通过计时器实现,但我想使用异步任务,因为我认为它对Android应用程序更有效。

56得票5回答
防止后退按钮取消DialogFragment

我有一个Fragment可以创建并弹出DialogFragment,但当我按下返回按钮时,它会关闭对话框,即使我明确地调用了setCancelable(false)。 有没有办法让我的DialogFragment对返回按钮不敏感?public class LoadingDialogFragme...