如何调用code在Android中的背景每秒一节 [英] how to call a section of code every second in background in Android
问题描述
我要叫code每秒的以下部分?
我曾尝试以下各项
但不知道如何调用每一秒??
I want call the following portion of code every second?? I have tried the following- But don't know how to call every second??
我怎么能继续调用新checkNWConnectivity()执行(测试); everysecond,并从那里到我的Android程序中调用???
How can I keep on calling new checkNWConnectivity().execute("Test"); everysecond and from where to call in my android program???
private class checkNWConnectivity extends AsyncTask<String, Integer, String> {
@Override
protected String doInBackground(String... params) {
ConnectivityManager manager = (ConnectivityManager)getSystemService(MainActivity.CONNECTIVITY_SERVICE);
// 3G confirm
Boolean is3g = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnectedOrConnecting();
// wifi confirm
Boolean isWifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting();
if(is3g){
tvNWConnectivity.setText(" Connected to 3G");
}else if(isWifi){
tvNWConnectivity.setText(" Connected to wifi");
}else{
String text = " No Network Connectivity."+"\n" + " Uploading will be resumed from streamlet "+countStreamletUploaded.toString();
tvNWConnectivity.setText(text);
}
return null;
}
}
所以我的问题是如何调用它的每一秒?
其实我想继续运行code的部分在doInBackground(字符串... PARAMS){...}
So my question is how to call it every second? Actually I want to keep on running the portion of code in doInBackground(String... params) { ... }
推荐答案
您可以使用的 TimerTask的,定时器和的处理器做到这一点:
You can use TimerTask, Timer and a Handler to do this:
public void toCallAsynchronous()
{
TimerTask doAsynchronousTask;
final Handler handler = new Handler();
Timer timer = new Timer();
doAsynchronousTask = new TimerTask()
{
@Override
public void run()
{
// TODO Auto-generated method stub
handler.post(new Runnable()
{
public void run()
{
try {
checkNWConnectivity performBackgroundTask = new checkNWConnectivity();
performBackgroundTask.execute();
} catch (Exception e)
{
// TODO Auto-generated catch block
}
}
});
timer.schedule(doAsynchronousTask, 0,30000); //put the time you want
}
这篇关于如何调用code在Android中的背景每秒一节的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!