我正在开发一个实时比分应用程序:我正在使用asynctask,在doInBackground函数中,我从网上下载数据并详细说明。在doInBackground中有一个for循环,在其中有一个子字符串istruction。 问题在于,对于子串构造,for循环不会运行所有循环(使50个而不是100个循环)。如果我删除子字符串istruction它完全运行所有周期。 谁能帮我? (抱歉英语不好)
答案 0 :(得分:0)
protected String doInBackground(String... params) {
int i=0;
String casa=null;
String trasferta=null;
String Ris=null;
String hinizio=null;
try {
Document doc = Jsoup.connect(URLind)
.userAgent("Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22")
.timeout(60000).get();
Elements partite = doc.select(....);
Elements Competizioni = doc.select(....);
String comp=Competizioni.toString();
String Competizione=null;
if(ObjPartita.size()==0){
for (i=0;i<=partite.size();i++){
//Some Jsoup Query
//ObjPartita.add(new Partita....)
Competizione=EstraiCampionato(comp,trasferta); //EstraiCampionato is a function that manipulate some String (substring, indexOf and conditions...)
}
}else{
//Other Jsoup Query
}
}
} catch (Exception e) {
// gestione dell'eccezione
// ad esempio mostrare messaggio di errore o altro (qui nel logcat)
//Log.e("ESEMPIO", "ERRORE NEL PARSING");
}
return null;
}
问题在于,如果我删除“EstraiCampionato”功能,for循环将完美地完成所有循环。相反,使用“EstraiCampionato”功能,它只运行循环的一部分(例如50而不是100 +)