草庐IT

asynctasks

全部标签

android - 我应该在长时间运行的 AsyncTask 中使用 getApplicationContext 还是 Activity.this

我有一个长时间运行的异步任务,它将一些数据发送到我的服务器然后停止。整个过程可能涉及一些请求和响应。我必须从数据库中读取数据,发送它并处理响应并相应地更新我的数据库。我正在使用内容提供程序从数据库中读取和更新数据。现在要使用内容提供程序,我必须在上下文中调用getContentResolver()方法。所以我想知道我是否必须使用getApplicationContext或只是将Activity.this传递给我的方法。我看到了一些帖子likethis解释两者之间的区别,在大多数情况下,他们建议我们尽可能不要使用getApplicationContext。虽然我不希望我的AsyncTas

android - 如何在 Android 中正确使用 AsyncTask

关闭。这个问题需要更多focused.它目前不接受答案。想要改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我不想将任何参数传递给AsyncTask的doInBackground方法。那么代码应该是什么样的? 最佳答案 importandroid.app.Activity;importandroid.app.ProgressDialog;importandroid.os.AsyncTask;importandroid.os.Bundle;publiccla

android - Volley 和 AsyncTask

我读过一篇关于Volley的文章,我知道它是一个很棒的网络库。但我无法理解一件事。所有请求都是异步任务吗?当我想使用Volley发送asyncTask请求时,我需要将Volley请求放入AsyncTask中吗?或者如果它已经是AsyncTask请求,我应该只调用VolleyRequest吗?privateclassMyClassextendsAsyncTask{@OverrideprotectedStringdoInBackground(String...params){//doVolleyrequest}}这是正确的方法吗? 最佳答案

android - 在 AsyncTask 中使用等待

在AsyncTask中使用wait时,我得到ERROR/AndroidRuntime(24230):Causedby:java.lang.IllegalMonitorStateException:objectnotlockedbywait()之前的线程是否可以使用Asynctask只是为了等待?怎么样?谢谢classWaitSplashextendsAsyncTask{protectedVoiddoInBackground(Void...params){try{wait(MIN_SPLASH_DURATION);}catch(InterruptedExceptione){//TODOA

android - 如何从 AsyncTask 中取回字符串?

我有以下类(class):publicclassgetURLDataextendsAsyncTask{@OverrideprotectedStringdoInBackground(String...params){Stringline;try{DefaultHttpClienthttpClient=newDefaultHttpClient();HttpPosthttpPost=newHttpPost(params[0]);HttpResponsehttpResponse=httpClient.execute(httpPost);HttpEntityhttpEntity=httpResp

android - 我应该为我的应用程序使用 AsyncTask 还是 IntentService?

我一直在阅读有关与Android的互联网连接的信息,并注意到有不同的方法来处理这个问题,即AsyncTask和IntentService.但是,我仍然不确定要使用哪一个。我的应用程序基本上是一个带有谷歌地图的位置/路径查找器。我的互联网连接将用于在map的某个半径范围内查找最近的路径。因此,每次用户将map移动或滑动到新位置时,它都会更新最近的路线。它还将添加一条新路径,并允许用户对路径进行评分。AsyncTask是否足够,或者我应该使用IntentService? 最佳答案 它们可以用于不同的目的。AsyncTask是一个方便的线

java - 如何将 AsyncTask 从 Android 移植到 java?

AsyncTask对于在Android中的UI线程和其他线程之间进行同步非常有用。所以我读了它的sourcecode并尝试移植到java经典(JDK)但没有成功,因为java中不存在某些类(消息,处理程序..)。我想创建一个具有一些有用功能的类,例如AsyncTask(可以在主线程和其他线程之间同步):doInBackground(Params...params)onProgressUpdate(Progress...values)onPostExecute(Resultresult)publishProgress(Progress...values)onPreExecute()onC

java - AsyncTask 的 get() 方法 : Is there any scenario where it is actually the best option?

回答后this问题,我对使用Android的AsyncTask类的get()方法的意义/有用性有疑问。publicfinalResultget()Waitsifnecessaryforthecomputationtocomplete,andthenretrievesitsresult.基本上,是AsyncTask类的同步解决方案,它会阻塞(卡住)UI,直到后台操作完成。除了测试目的之外,即使在那些情况下,我也无法真正想到它实际上是一个好的解决方案,但我可能错了,所以我感到好奇。如果您需要用户真正等到AsyncTask完成,您可以显示一个Dialog或ProgressDialog,随时控

java - 未经检查的调用 'execute(Params...)' 作为原始类型 'android.os.AsyncTask' 的成员

我正在关注Udacity上的googleandroid教程,但在指定的代码中,我收到以下警告:UncheckedCallto'execute(Params...)'asamemberofrawtype'android.os.AsyncTask'关于此代码:DoSomethingTaskmyTask=newDoSomethingTask();myTask.execute();//WarninghereDoSomethingTask:publicclassDoSomethingTaskextendsAsyncTask{protectedObjectdoInBackground(Object

java - 如何从 AsyncTask 返回 boolean 值?

我有一些用户输入ftp地址、用户名、密码、端口和testConnection按钮的EditTexts。如果连接成功建立,则返回boolean值true。booleanstatus=ftpConnect(_address,_username,_password,_port);ftpDisconnect();if(status==true){Toast.makeText(SiteManager.this,"ConnectionSuccesful",Toast.LENGTH_LONG).show();}else{Toast.makeText(SiteManager.this,"Connect