jjzjj

onPostExecution

全部标签

android - 用于更新小部件的 AsyncTask - 如何访问 onPostExecute() 中的 TextView ?

以下情况:我有一个appwidget,它从url轮询数据并使用parsedhtml更新widget。在pre-honeycomb设备上,这可以通过service完成,无需使用单独的线程。现在,在ICS上,这已经改变,ASyncThread是必需的。要访问Widget-Updater-Service中的TextViews,我使用RemoteViewsremoteViews=newRemoteViews(getApplicationContext().getPackageName(),R.layout.widget_layout);remoteViews.setTextViewText(R

android - 我如何在 AsyncTask 中从 onPostExecute 发回数据?

我的问题和这个一样InstancevariableofActivitynotbeingsetinonPostExecuteofAsyncTaskorhowtoreturndatafromAsyncTasktomainUIthread但我想将数据发送回同一个调用Activity。不启动Activity的Intent总是重新启动Activity 最佳答案 选项是使用监听器,您可以在其中创建一个您的Activity实现的接口(interface),例如:publicinterfaceAsyncListener{publicvoiddoSt

android - 单元测试用例中未调用 AsyncTask onPostExecute()

我看过很多与此相关的帖子,但似乎没有一个与我遇到的问题相同。GetBusinessRulesTask扩展了AsyncTask。当我在单元测试用例中执行此操作时,永远不会调用onPostExecute()。但是,如果我使用真实的客户端代码,则每次都会调用onPostExecute()。不确定我在这里做错了什么。测试用例:packagecom.x.android.test.api;importjava.util.concurrent.CountDownLatch;importandroid.test.ActivityInstrumentationTestCase2;importandroi

android - 在 onPostExecute() 中运行另一个 AsyncTask

如果我需要在另一个异步任务中运行另一个异步任务,这意味着在onPostExecute()方法中,该怎么办? 最佳答案 作为一项建议,请尝试尽可能多地卸载第一个AsyncTask中接听电话的时间。但是,如果您的应用程序设计方式是您只需要在第一个任务完成后执行另一个任务,那么只需按照与第一个任务完全相同的方式执行第二个AsyncTask一个。@OverrideprotectedvoidonPostExecute(Stringresult){newMySecondAsyncTask().execute(params);//paramsif

android - 我的 AsyncTasks 都没有回调到 onPostExecute

当我全新安装我的应用程序时,我的AyncTask似乎都不起作用。不管是哪一个,它们都失败并显示消息“正在向死线程发送消息。”他们从事各种Activity,从事各种不同的工作,但都失败了。如果我在DDMS的线程查看器中查看线程,所有5个左右的AsynchTask线程似乎都处于空闲状态并等待工作。如果我强行关闭应用程序,然后重新启动它,它们都会开始工作。它们都在UI线程上启动。有什么想法吗? 最佳答案 这是由于Android框架中AsyncTask的一个错误。AsyncTask.java具有以下代码:privatestaticfinal

java - 有没有类似于传统线程的onPreExecute和onPostExecute的东西?

我之前使用的是AsyncTask,只是出于不值得为这个问题深入探讨的原因而转而使用传统的Thread。我该怎么做才能让某些东西在线程启动之前和之后执行,类似于onPre/PostExecute的功能?例如,假设我想在线程开始前显示一个加载圆圈,并在线程结束时将其关闭。我该怎么做?对于执行后位,我正在使用thread.join()并且它似乎可以解决问题。不过,我不确定这是否是解决问题的方法,或者如何进行预执行。 最佳答案 WhatcanIdotomakesomethingexecutebeforeandafterthethreadst

android - AsyncTask 从不执行 onPostExecute

我正在尝试执行以下AsyncTask:privateclassTimeUpdateTaskextendsAsyncTask,Integer,Void>{@OverrideprotectedVoiddoInBackground(List...params){mObjecto;inti;intnumChecked=0;ListmObjects=params[0];while(true){if(isCancelled()){Log.w("TAG","taskinterrumped");returnnull;}for(i=0;i)EventListView.this.EventView.get

android - onPostExecute() 无法重新运行从 Activity 调用的 asyncTask

如果我第一次运行我的应用程序,则在doinBackground()完成后控制转到onPostExecute()。但是如果我在设备上重新运行该应用程序而不卸载,则永远不会执行onPostExecute()。我有一个Activity,我从那里调用我的asynTask。代码:publicclassAddThingextendsActivity{@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_I

android - AsyncTask onPostExecute 没有在主线程上运行?

我的应用程序中有一些Activity访问了网络服务。因为我不想拖延主线程,所以这段代码在AsyncTask中。但是,我不希望用户在调用Web服务时操纵Activity,因此在执行AsyncTask之前,我会显示一个ProgressDialog,它会旋转并阻塞屏幕。在AsyncTask的onPostExecute方法中,我做的第一件事是关闭ProgressDialog。这应该可以防止用户在不实际阻塞主线程的情况下操纵Activity。但是,我注意到有几次ProgressDialog从不被关闭并且用户卡住了。AsyncTask已完成,onPostExcute已执行,但ProgressDia

Android AsyncTask onPostExecute 方法

编辑:如果我根本不使用进度,只显示对话框,那么一切正常,没有任何问题。但是,如果我添加进度,则对话框不会关闭(不会触发方法onPostExecute())。onPostExecute方法没有被执行。我哪里有错误?(模拟器和设备上的结果相同)我也不确定是否应该对这些方法使用覆盖符号这是目前的粗略解决方案。它每次都有效,但不是正确的,也不是很好的。我在做什么:*我使用tabgroupactivity开始一个子Activity*然后我导航到子Activity中的另一个Activity,所以它是parent的当前child*有一个WebView,我在其中显示有关一条评论的信息..随便*webV