草庐IT

aSyncTask

全部标签

android - AsyncTask<String, Void, String> 通用类型。安卓

我已经在几个项目中使用这个AsyncTask,但仍然不太明白的作用意思是。这些是否意味着未实现方法的参数类型?有什么命令吗(String、Void、String分别对应什么方法)? 最佳答案 来自AndroidDocsAsyncTask页:android.os.AsyncTask异步任务使用的三种类型如下:Params,thetypeoftheparameterssenttothetaskuponexecution.Progress,thetypeoftheprogressunitspublishedduringthebackgro

android - 如何提升AsyncTask的优先级?

有没有办法提高AsyncTask的优先级?我正在AsyncTask中进行一些图像处理。在非常慢的设备上,处理图像最多需要60秒。现在我想通过提高任务的优先级来提高性能。能以某种方式完成吗? 最佳答案 尝试使用以下(增加优先级AsyncTask线程):protectedfinalMyResultdoInBackground(MyInput...myInput){Process.setThreadPriority(THREAD_PRIORITY_BACKGROUND+THREAD_PRIORITY_MORE_FAVORABLE);//b

安卓 : how to execute AsyncTask?

我必须在我的应用程序中加载XML数据,我在扩展AsyncTask的Activity类的子类中这样做:publicclassMyActivityextendsActivity{ArrayListlistOffres;privateclassDownloadXMLextendsAsyncTask{protectedVoiddoInBackground(Void...params){listOffres=ContainerData.getFeeds();returnnull;}}publicvoidonCreate(BundlesavedInstanceState){super.onCrea

java - 安卓异步任务 : Is inner class necessary?

我尝试使用Asynctask在Android中进行网络连接,无论成功与否。我比较好奇的是:Asynctask有必要做内部类吗?我没有将它作为内部类的一种形式,但GoogleAPI指南说AsyncTask必须被子类化才能使用。(但我没有,它有效...)-http://developer.android.com/reference/android/os/AsyncTask.html为什么Asynctask采用类的形式,即使它只执行一个主要功能?(我觉得应该是方法,而不是类。) 最佳答案 'AsyncTaskmustbesubclasse

android - AsyncTask<String, Void, Void> 是如何工作的?

谁能告诉我这里出了什么问题?publicclassBackgroungTaskextendsAsyncTask{publicVoiddoInBackground(String...params){//tasksreturn;//erroroccurshere!}publicvoidonPostExecute(Voidresult){//codes}}上面的类不依赖于返回值。所以onPostExceute()只是执行写在里面的代码。提前致谢! 最佳答案 只返回null。publicclassBackgroungTaskextendsA

使用 AsyncTask 和 UI 更新解决方案的 Android 单元测试

场景:我正在尝试对我的应用程序的onClick处理程序进行单元测试。Onclick针对RESTAPI进行简单搜索,返回结果并更新UI。详细信息:Onclick执行一个AsyncTask,doInBackground查询RESTAPI并返回结果。onPostExecute获取结果并将新的ListAdapter分配给包含数据的ListView。问题:onPostExecute不会被测试运行程序调用,因为它在同一个UI线程上并阻止调用。有几种模式可以处理这个问题。但是,如果我将AsyncTask放在Runnable中并使用LatchCountdown等待结果,我会得到CalledFromWr

android - 服务类架构的设计模式

存在以下组件(简化)的设计模式是智能的:3个组件-界面-数据getter-数据库我无法访问Internet中的服务器,它只是一个数据源。放在互联网上的数据总是更新的,本地数据库只是互联网上的一个副本(缓存)。GUI可以请求和更新本地缓存,类服务组件然后异步获取最新数据,这可能需要一段时间。GUI仅显示来自本地数据库的数据,他可以同步获取这些数据。所以我的问题是,对于具有Progressbar功能的可能长期运行的服务,您会使用哪些类?对于这种“问题”有更好的设计吗?有更好的做法吗? 最佳答案 关于类似服务的组件:启动更新过程的接口(i

android - AsyncTask doInBackground 参数与构造函数参数

在doInBackground中,我需要引用应用程序上下文或Activity。在线程安全和其他可能的多线程概念方面,newMyAsyncTask(getApplicationContext())和doInBackground(Context...params)之间有什么区别吗,限制?谢谢。 最佳答案 没有。假设你有类似的东西:privateclassMyAsyncTaskextendsAsyncTask{privateContext_context=null;MyAsyncTask(Contextcontext){_context=

java - 算法优化 - 并行 AsyncTasks 还是线程?

我目前有一个AsyncTask,它目前使用OpenCV使用冒泡排序技术比较图像。比如,我必须将400图像相互比较。这意味着400*401/2=80,200比较。假设一次比较需要1秒。所以,那是80,200秒,大约是22.27小时,长得离谱。因此,我开发了这种类型的算法:它将400图像分成5组。因此每组中有80个图像。算法的第一部分是在组成员中比较自己的图像。因此,image1会将自己与image2-80进行比较,这意味着有79次比较。image2将有78比较等等。这使得3,160比较。或者3,160秒。同样,image81会将自己与image82-160进行比较,依此类推。所以所有“组

Android AsyncTask - 为什么没有执行 doInBackground()?

我有一个包含以下方法的嵌套fragment:publicvoidonSave(){if(getActivity()==null||view==null)return;if(file!=null&&file.exists()){newAsyncTask(){@OverrideprotectedvoidonPreExecute(){Log.d("log","onPreExecuteofsaveex");}@OverrideprotectedVoiddoInBackground(Void...params){Log.d("log","doInBackgroundofsaveex");//DO