在后台的Android更新数据到服务器 [英] update data to server in the background android
本文介绍了在后台的Android更新数据到服务器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何更新数据到服务器?我已经使用了code以下,但其10分钟后,没有执行。
ScheduledExecutorService的遗嘱执行人= Executors.newSingleThreadScheduledExecutor();
executor.scheduleWithFixedDelay(新的Runnable(){
公共无效的run(){
//更新数据到服务器
}
},0,600,TimeUnit.SECONDS);
解决方案
您必须使用自己的线程。 下面是使用AsyncTask的解决方案......
所有code将在你的Activity类。
公共无效toCallAsynchronous(){
最终的处理程序处理程序=新的处理程序();
定时器定时=新的Timer();
TimerTask的doAsynchronousTask =新的TimerTask(){
@覆盖
公共无效的run(){
handler.post(新的Runnable(){
公共无效的run(){
尝试 {
MyAsyncTask任务=新MyAsyncTask();
task.execute(txtSearchField.getText()的toString());
}
});
}
};
timer.schedule(doAsynchronousTask,0,2000);每2秒//执行
}
// AsyncTask的类
私有类MyAsyncTask扩展的AsyncTask<字符串,对象,列出< ModelObject>> {
@覆盖
受保护的名单,其中, ModelObject> doInBackground(字符串... PARAMS){
//调用Web服务
返回null;
}
@覆盖
保护无效onPostExecute(名单< ModelObject>的结果){
super.onPostExecute(rezultat);
//更新用户界面
}
}
How to update data to server ? I have used the code below but its not executing after 10 mins.
ScheduledExecutorService executor = Executors.newSingleThreadScheduledExecutor();
executor.scheduleWithFixedDelay(new Runnable(){
public void run() {
//update data to server
}
}, 0, 600, TimeUnit.SECONDS);
解决方案
You must use your own Thread. Here is solution using AsyncTask....
All code put in your Activity class.
public void toCallAsynchronous() {
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
public void run() {
try {
MyAsyncTask task = new MyAsyncTask();
task.execute(txtSearchField.getText().toString());
}
});
}
};
timer.schedule(doAsynchronousTask, 0, 2000); // execute in every 2 second
}
// AsyncTask Class
private class MyAsyncTask extends AsyncTask<String, Object, List<ModelObject>> {
@Override
protected List< ModelObject > doInBackground(String... params) {
// Call web service
return null;
}
@Override
protected void onPostExecute(List< ModelObject > result) {
super.onPostExecute(rezultat);
// Update UI
}
}
这篇关于在后台的Android更新数据到服务器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文