草庐IT

asynctasks

全部标签

java - 命名 AsyncTask 的线程

是否可以为AsyncTask的后台线程命名,就像Java中的普通线程一样:Thread(Runnabletarget,Stringname)我看过AsyncTask的代码,默认构造函数只是默认给个名字privatestaticfinalThreadFactorysThreadFactory=newThreadFactory(){privatefinalAtomicIntegermCount=newAtomicInteger(1);publicThreadnewThread(Runnabler){returnnewThread(r,"AsyncTask#"+mCount.getAndIn

java - Object[] 不能在 AsyncTask 中强制转换为 Void[]

我在扩展的asynctask中遇到了这个错误,但我确定Object[]是一个Void[]。这是我的自定义AsyncTask:publicabstractclassRepeatableAsyncTaskextendsAsyncTask{privatestaticfinalStringTAG="RepeatableAsyncTask";publicstaticfinalintDEFAULT_MAX_RETRY=5;privateintmMaxRetries=DEFAULT_MAX_RETRY;privateExceptionmException=null;/***Defaultconstr

java - API 级别 11 之前的 AsyncTask.executeOnExecutor()

我们在Android中执行AsyncTask的正常方式是,来自AndroidAPI:privateclassDoIntenseTaskextendsAsyncTask{protectedVoiddoInBackground(Object...params){for(Objectparam:params){ObjectrtnObj=doIntenseJob(param);publishProgress(rtnObj);}returnnull;}protectedvoidonProgressUpdate(Object...progress){for(ObjectrtnObj:progres

java - 完成 AsyncTask 后未调用 onPostExecute

出于某种原因我的onPostExecute()在我的AsyncTask之后不调用完成。我的类(class)声明:publicclasssetWallpaperForegroundextendsAsyncTask我的onPostExecute():protectedvoidonPostExecute(Booleanresult)一切正常,我的doInBackground()成功完成并返回一个boolean值,然后它就完成了。谢谢 最佳答案 您是否使用execute()方法启动任务?如果您只调用doInBackground,onPost

java - 扩展 AsyncTask<Void, Void, Void>

在我的android应用程序中,我在doInBackground中执行一些操作通过扩展AsyncTask类(class)。(我在这个类中执行任何UI都没用)这是正确使用AsyncTask吗?如果可以,我可以改为扩展AsyncTask吗?扩展AsyncTask有什么区别?和AsyncTask代码示例:publicclassMessagePoolingextendsAsyncTask{@OverrideprotectedVoiddoInBackground(Void...params){while(!isCancelled()){//GettingdatafromserverSystemC

java - 无法覆盖 AsyncTask 类中的 onPostExecute() 方法或使其触发

我在运行AsyncTask时无法调用onPostExecute()方法。当我尝试设置扩展AsyncTask的类时,其中onPostExecute()被覆盖,我收到以下构建错误。'ThemethodonPostExecute()oftypeAsyncTaskExampleActivitymustoverrideorimplementasupertypemethod'我已尝试摆脱@Override注释。这消除了构建错误,但该方法仍然没有执行。如果有人能指出我忽略了什么,我将不胜感激。代码:packagecom.asynctaskexample;importandroid.os.AsyncT

android - Kotlin Android 中 "This AsyncTask class should be static or leaks might occur"的正确方法是什么?

这里有很多关于Thisclassshouldbestaticorleaksmightoccur的问题。在javaandroid中。ThisHandlerclassshouldbestaticorleaksmightoccur:IncomingHandlerThisHandlerclassshouldbestaticorleaksmightoccur:AsyncQueryHandlerThisAsyncTaskclassshouldbestaticorleaksmightoccur(anonymousandroid.os.AsyncTask)警告是由于内部类拥有对外部类的隐式引用,因此阻

android - Android 中的 AsyncTask 与 Kotlin

如何使用Kotlin在Android中进行API调用?我听说过Anko.但我想使用Kotlin提供的方法,比如在Android中我们有Asynctask用于后台操作。 最佳答案 AsyncTask是AndroidAPI,而不是Java或Kotlin提供的语言功能。如果你愿意,你可以像这样使用它们:classsomeTask():AsyncTask(){overridefundoInBackground(varargparams:Void?):String?{//...}overridefunonPreExecute(){super.

android - AsyncTask 和 Thread/Runnable 的区别

我有一个令我困惑的问题。假设我想在另一个线程中执行某些操作,例如获取GPS/位置信息,正如SDK文档中所建议的那样,必须使用后台线程。所以问题来了:通过AsyncTaskAND在后台创建一个Thread创建Threadthread1=newThread(newRunnable()...并实现run()? 最佳答案 AsyncTask是一个便利类,用于在新线程上做一些工作,并在完成时使用调用它的线程(通常是UI线程)上的结果。它只是一个包装器,它使用了几个可运行对象,但处理了创建线程和处理线程之间的消息传递的所有复杂性。AsyncTa

Android - 强制取消 AsyncTask

我已经在我的一项Activity中实现了AsyncTask:performBackgroundTaskasyncTask=newperformBackgroundTask();asyncTask.execute();现在,我需要实现“取消”按钮功能,所以我必须停止执行正在运行的任务。我不知道如何停止正在运行的任务(后台任务)。所以请建议我,我如何强制取消AsyncTask?更新:我发现Cancel()方法相同,但我发现调用cancel(booleanmayInterruptIfRunning)不一定停止执行后台进程。似乎发生的一切是AsyncTask将执行onCancelled(),并