草庐IT

asynctasks

全部标签

android - 即使应用程序被销毁,AsyncTask 也将始终运行?

我有一个应用程序,因为你不能在我使用AsyncTask的主线程上进行网络操作,所以问题是一旦我execute()AsyncTask然后我finish()Activity,也许用户会finish()整个应用程序,所以我是想知道的是:AsyncTask是否会始终完成doInBackground()和onPostExecute(),即使应用程序已关闭,只要execute()在应用运行时被调用? 最佳答案 您将能够对此进行测试。是的,确实如此。如果调用了执行,您可以看到Asynctask仍将执行,除非它对前台或UI相关的操作。(可能会导致启

java - 如何处理来自 AsyncTask 的返回值

我正在使用具有以下签名的AsyncTask类:publicclassApiAccessextendsAsyncTask,Integer,String>{...privateStringPOST(List[]nameValuePairs){...returnresponse;}}protectedStringdoInBackground(List...nameValuePairs){returnPOST(params);}我正在尝试通过以下方式从其他类调用它:ApiAccessapiObj=newApiAccess(0,"/User");//StringsignupResponse=ap

android - 调用 AsyncTask.get() 时未显示 ProgressDialog

这个问题在这里已经有了答案:关闭10年前.PossibleDuplicate:AsyncTaskblockUIthreatandshowprogressbarwithdelay我想在从任何服务器检索JSON时显示一个progressDialog。所以我使用AsyncTask作为解决方案(不确定有什么不同的出路)。一切都很好,ProgressDialog可以正常工作,直到我使用AsyncTask实例调用.get()方法。我想它以某种方式阻止了用户界面。这是我的AsyncTask:publicclassmyAsyncextendsAsyncTask{Stringmessage;//ford

android - 如何调试 AsyncTask 的 doInBackground 代码

我设置了断点,但它们似乎被忽略(或从未见过)。我的代码如下。我正在尝试将sql数据库备份到SD卡。当我在Eclipse中运行它(不是Debug模式)时,我从onPreExecute收到消息,然后很快收到来自onPostExecute的消息。我在ExportDatabaseFileTask的几乎每一行都设置了断点。当我在Eclipse中运行它(在Debug模式下)时,我在onPreExecute的断点处停止,然后当我更进一步时,调试器的下一行是:mDbHelper.open();然后,我将逐步执行其余的正常代码,并留下显示来自onPreExecute的消息的AVD,它显然会永远存在。我没

Android Asynctask 传递单个字符串

我想将单个字符串传递给异步任务。谁能告诉我它是怎么做的?我的getEntity需要方法getEntity(Activity,String,EntityGetListener)但我一直在传递这个String[]Stringpass=story.get(position).getEntity();newRemoteDataTask().execute(pass);privateclassRemoteDataTaskextendsAsyncTask{@OverrideprotectedLongdoInBackground(String...params){//TODOAuto-generat

Android Asynctask vs Runnable vs timertask vs Service

这些方法(类)有什么区别?我想运行一个每5秒运行一次的应用程序,完成后清除内存并且当cpu处于待机模式时,您可以运行该应用程序。这样应用就不会绑定(bind)到唤醒锁。问候,沙夫卡特 最佳答案 前三个之间的区别只是为您完成的工作量。还有一个Service是fundamentalAndroidapplicationcomponent.AsyncTask作为一个便利类,用于在新线程上做一些工作,并在完成后在调用它的线程(通常是UI线程)上使用结果。它只是一个包装器,它使用了几个可运行对象,但处理了创建线程和处理线程之间的消息传递的所有复

android - 为并行小型已知卡住过程创建匿名 AsyncTask 是一种好习惯吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题吗?更新问题,以便editingthispost提供事实和引用来回答它.关闭8年前。Improvethisquestion例如:您会做一些需要几秒钟的事情并且不想卡住您的UI线程,对吗?您可以使用AsyncTask,但您不想创建外部(或内部)类来解决小卡住问题。那么,这样做是个好习惯吗?packagecom.example.stackoverflowsandbox;importandroid.os.AsyncTask;publicclassFoo{//E.g.beforecallfoomethodyoucha

android - 将 AsyncTask 转换为 RxAndroid

我有以下方法使用otto和AsyncTask向UI发布响应。privatestaticvoidonGetLatestStoryCollectionSuccess(finalStoryCollectionstoryCollection,finalBusbus){newAsyncTask(){@OverrideprotectedVoiddoInBackground(Void...params){bus.post(newLatestStoryCollectionResponse(storyCollection));returnnull;}}.execute();}我需要帮助才能使用RxAnd

android - 如何从 ASyncTask 调用父 Activity 函数?

setAccountAuthenticatorResult可以从扩展AccountAuthenticatorActivity的Activity中调用。我的Activity扩展了它,但启动了ASyncTask,因此应该从ASyncTask调用这个setAccountAuthenticatorResult(或者,应该将ASyncTask的结果传递回主线程)。怎么做?下面的代码有什么问题?AsyncTasktask=newRetrieveAccessTokenTask(this,consumer,provider,prefs).execute(uri);publicclassRetrieve

android - 运行 AsyncTask 时处理屏幕方向更改

我已经被这个问题困扰了一段时间。当我有一个单独的Thread/AsyncTask运行时,如何正确处理屏幕方向的变化?目前,我有android:configChanges="orientation|keyboard|keyboardHidden"在我的AndroidManifest.xml中,但那是notreallyencouraged:Note:Usingthisattributeshouldbeavoidedandusedonlyasalast-resort.PleasereadHandlingRuntimeChangesformoreinformationabouthowtopro