草庐IT

ASYNCTASK

全部标签

android - 不使用 get() 方法从 AsyncTask 返回值

我试图从DoInBackground中的异步任务返回值,但调用get()方法卡住了我的UI。如何将代码重写为回调方法?:publicclassGetUrlDataTaskextendsAsyncTask{Stringresponse;HttpUtilsutil;@OverrideprotectedStringdoInBackground(String...params){try{util=newHttpUtils(params[0]);response=util.getContent();}catch(Exceptione){//TODOAuto-generatedcatchblock

java - 在 AsyncTask 中填充数组时出现 Android 错误

我想填充一个数组,以便我可以将该结果附加到TextView,但应用程序一直崩溃:04-0223:45:29.286:E/AndroidRuntime(6620):FATALEXCEPTION:AsyncTask#304-0223:45:29.286:E/AndroidRuntime(6620):java.lang.RuntimeException:AnerroroccuredwhileexecutingdoInBackground()04-0223:45:29.286:E/AndroidRuntime(6620):atandroid.os.AsyncTask$3.done(AsyncT

Android:Asynctask 中的多个参数

我需要将两个参数(lv和位置)传递给AsynctaskdoInBackground方法,但我不知道该怎么做...LoadSound.execute(lv,position)classLoadSoundextendsAsyncTask谢谢!编辑:我有一个ListView。如果你点击一个项目播放声音(来自互联网)。我想用Asynctask显示一个progressDialog。在doInBackground方法中我有itemOnClick:HashMapo=(HashMap)lv.getItemAtPosition(position);因此我需要传递lv和position。

android - 在服务中使用 AsyncTask 更新通知栏中的进度条?

我正在尝试使用包含用于后台工作的AsynTask的服务来下载多个二进制文件。我能够成功运行该服务,我已将其注册到list文件中。我可以下载文件,但是我想在通知栏中显示一个进度条。我在onPreExecute()方法内创建通知栏并设置进度条并在onProgressUpdate()方法内通知NotifactionManager。privateclassDownloadFileAsyncextendsAsyncTask{@OverrideprotectedvoidonPreExecute(){super.onPreExecute();notificationManager=(Notifica

android - AsyncTask中的httpClient是否需要wakeLock?

我在AsyncTask中执行httpClient但在此之前另一个AsyncTask用于生成一些数据,这可能需要很长时间。如果设备在执行httpClient之前进入休眠状态,会发生什么?httpClient请求需要唤醒锁吗? 最佳答案 如果设备进入休眠状态,您的ActivityonPause()将被调用。如果您不以某种奇特的方式取消/终止后台任务,则不会发生任何事情。AsyncTask在与主应用程序不同的线程中运行,因此没有什么可以阻止它们。曾经。我不明白你的设计:两个独立的AsyncTask的目的是什么?如果收集数据来填充HTTP请

android - 如何从另一个类中的 AsyncTask onPostExecute() 调用 notifyDataSetChanged()

在onCreate()中,我调用了一个ChannelStore类来创建一个单例,我的fragment的ListView正在使用由Channelstore创建的数据集。doInBackground()完成后,我需要在适配器上调用notifyDateSetChanged()但我不确定如何实现,因为我的AsyncTask在一个类(ChannelStore)中,而适配器在我的fragment(ChannelListFragment)中。有人可以引导我找到解决方案吗?channel列表fragment:publicclassChannelListFragmentextendsListFragme

android - AsyncTask 完成后重新启动完整的 Android 应用程序

我正在编写的应用程序会检查/sdcard下的目录中是否有特殊的ZIP文件,如果没有则开始下载并解压缩它。下载和解压缩工作得很好,即使是子目录。但我需要在完成后重新启动该应用程序-但这是行不通的。起初我有一个特殊的Activity“PreMainActivity.java”只是为了重启目的:importandroid.app.Activity;importandroid.content.Intent;importandroid.os.Bundle;publicclassPreMainActivityextendsActivity{/****/publicstaticBooleanENAB

java - AsyncTask 中的字符串越来越少

这个问题在这里已经有了答案:Android-Setmaxlengthoflogcatmessages(14个答案)关闭8年前。我正在使用一个字符串来获取图像的base64字符串(我已将其存储在values/strings.xml中)。但是当我尝试将该字符串的内容复制到另一个字符串时,原始字符串末尾的几个字符不会被复制到第二个字符串。原始字符串长度为4072个字符。classTaskextendsAsyncTask{privateProgressDialogdialog;privateContextcontext;@SuppressWarnings("unused")privateAct

java - AndroidTestCase 中永远不会调用 AsyncTask 的 onPostExecute()

我正在为我的Android项目编写一个非常简单的单元测试用例,测试用例简单地执行一个在后台进行网络操作的AsyncTask。我正在为我的测试用例扩展AndroidTestCase类:publicclassMyTestextendsAndroidTestCase{//useCountDownLatchtoperformwait-notifybehaviorprivateCountDownLatchsignal;@OverridepublicvoidsetUp()throwsException{super.setUp();//IuseCountDownLatchtoperformwait-

android - 使用 AsyncTask 将数据插入数据库的正确方法是什么

我正在使用AsyncTask从服务器下载数据,我想将数据插入到我的数据库中。如果用户按下主页按钮,我必须在哪里放置插入代码以及如何阻止AsyncTask插入数据?我目前正在使用asynctask.cancel(true)但我无法停止数据库插入。publicclassTalkToServerextendsAsyncTask{@OverrideprotectedvoidonPreExecute(){super.onPreExecute();//showprogressdialog}@OverrideprotectedvoidonProgressUpdate(String...values)