Comment exécuter la tâche asynchrone à un moment précis ? (Je veux l'exécuter toutes les 2 minutes)
J'ai essayé d'utiliser le post delayed, mais ça ne marche pas ?
tvData.postDelayed(new Runnable(){
@Override
public void run() {
readWebpage();
}}, 100);
Dans le code ci-dessus, readwebpage est une fonction qui appelle la tâche asynchrone pour moi
Actuellement, voici la méthode que j'utilise.
public void onCreate(Bundle savedInstanceState) {
readwebapage();
}
public void readWebpage() {
DownloadWebPageTask task = new DownloadWebPageTask();
task.execute("http://www.google.com");
}
private class DownloadWebPageTask extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... urls) {
String response1 = "";
response1=read();
//read is my another function which does the real work
response1=read();
super.onPostExecute(response1);
return response1;
}
protected void onPostExecute(String result) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
TextView tvData = (TextView) findViewById(R.id.TextView01);
tvData.setText(result);
DownloadWebPageTask task = new DownloadWebPageTask();
task.execute(new String[] { "http://www.google.com" });
}
}
C'est ce que mon code est et il fonctionne parfaitement bien mais le gros problème est que je vide ma batterie ?