我在android中有一个应用程序,我正在其中访问几个RESTweb服务。我正在使用AsyncTasks来访问这些并在之后做一些UI更改。我想在不同的Activity中使用其中一些电话。然而,根据我读过的所有教程,AsyncTasks被用作Activity中的内部类(这是有道理的,因为它们正在改变那些Activity中的View)。但是如何解决那些AsyncTasks的可重用性呢?甚至,假设我想在位置更改时执行一些AsyncTasks调用。我有一个LocationListener(它是一个外部类),我想在onLocationChange()方法内部进行API调用。但是我无法访问我想要的
我正在开发一个Android应用程序,它有很多不同的网络服务请求。每个请求都以这种方式在AsyncTask的子类中完成:(newAsyncTask(){@OverrideprotectedObject1doInBackground(String...params){//networkrequestandparsingtoObject1Object1obj=newObject1();obj1=Parser.parseObject1(httpClient.execute(...));returnobj1;}@OverrideprotectedObject1onPostExecute(Obj
我应该如何使用AsyncTask类和进度条来执行将文件复制到手机SD卡本地上下文中的另一个目录的过程?我在[此处][1]看到了一个类似的示例,但我不知道如何合并差异/修改代码的上下文以适合我的上下文以使其工作? 最佳答案 应该是这样的//Paramsareinputandoutputfiles,progressinLongsizeof//datatransferred,ResultisBooleansuccess.publicclassMyTaskextendsAsyncTask{ProgressDialogprogress;@Ov
我正在尝试一个一个地下载多个文件(文件已下载,我们开始下载下一个文件)。使用这种方法,我可以跟踪正在下载的文件。问题是我正在使用以下代码来执行任务:Filefile=null;for(inti=0;i如您所见,我调用了newDownloadFileAsync().execute(videoURL+videos[i],videos[i]);在一个循环中,显然为每个文件启动一个任务并同时下载它们。我的问题是:我如何运行特定文件的执行任务,检查它是否已下载-如果是,通过为它执行任务来继续下一个文件? 最佳答案 packagecom.exa
我的一个Activity中的一个按钮调用了一个AsyncTask,它更新了ListView的SimpleCursorAdapter的底层Cursor。每次我单击该按钮时,都会为AsyncTask添加一个新线程并且任务完成(进入“等待”状态)。如果我点击按钮5次或更多次,5个AsyncTasks最终会以“等待”状态停在那里。这是正常现象还是我某处有内存泄漏?AsyncTaskprivateclassupdateAdapterextendsAsyncTask{@OverrideprotectedVoiddoInBackground(Void...params){//Opendatabase
我遇到了无法修复的内存泄漏问题。我使用MemoryAnalizer确定了它发生的位置,但我徒劳地努力摆脱它。这是代码:publicclassMyActivityextendsActivityimplementsSurfaceHolder.Callback{...Camera.PictureCallbackmPictureCallbackJpeg=newCamera.PictureCallback(){publicvoidonPictureTaken(byte[]data,Camerac){try{//logtheactionLog.e(getClass().getSimpleName(
我正在做一些繁重的网络任务——下载图片(预览)——为了不阻止我的主UI,它在AsyncTask中执行了此操作,我想将它们放在GridView中,但我在AsyncTask完成之前设置了适配器。一些代码会更有帮助publicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.gridview);newLoadAllPictures().execute();GridViewg=(GridView)findViewById(R.id.gridview)
我在另一个线程中有一些工作要做(通过doingAsyncTask)。当用户点击按钮时工作开始。但同时只有一个doingAsyncTask对象必须完成这项工作,我认为如果doingAsyncTask正在工作,则单击按钮不能创建一个新的doingAsyncTask对象并执行它,它必须等到工作完成。我该如何检查?publicclassSearchActivityextendsActivity{publicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);//....}publicvoidoncl
我正在开发一个应用程序,我需要将asynctask的onPostExecute方法的结果值发送到上一个Activity,即调用aync任务的Activity。请输入一些代码。感谢任何帮助 最佳答案 两种方式:在父Activity中将扩展AsyncTask的类声明为私有(private)类将Handler或Activity本身作为扩展AsyncTask的类的参数传递如果我是你,我会选择第一个选项。看DOCS:classMyActivitySubclassextendsActivity{functionrunOnPostExecute(
我正在为mylocalcinematheque编写一个粉丝应用程序,显示接下来几天的放映日历。使用parametrizedHTTPcall检索每日电影列表。来自该站点(答案包含希伯来语,因此如果您单击该链接并收到一些乱码,则可能没问题)。该应用程序显示接下来八天的日程安排,因此它会根据每天的日程安排请求进行8次调用。privateclassGetMoviesTaskextendsAsyncTask>doInBackground()获取每天的电影列表,onPostExecute()更新界面。AsyncTask从MainActivity.onCreate()调用:for(inti=0;i问