我有一個應用程序,通過FTP定期下載一個非常小的文本文件(10字節),然後上傳一個較大的文件(200字節)。它使用報警管理器來完成這項工作,而且似乎運作良好。我想知道如果我需要在不同的線程上運行它,萬一互聯網變得擁堵,還是我過於謹慎?下面是FTP下載的代碼:這個應用程序需要不同的線程嗎?
public void getFTP(Context context)
{
//
// Download config.txt file from server
//
FTPClient ftpClient = new FTPClient();
try{
ftpClient.connect(InetAddress.getByName(ipAddress));
ftpClient.enterLocalPassiveMode();
ftpClient.login("user", "pass");
ftpClient.setFileType(FTP.ASCII_FILE_TYPE);
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("/sdcard/config.txt"),8*1024);
boolean status=ftpClient.retrieveFile("config.txt", bos);
if(status){
Toast toast = Toast.makeText(context, "Downloaded config.txt!", Toast.LENGTH_SHORT);
toast.show();
}
else {
Toast toast = Toast.makeText(context, "Cannot download config.txt!", Toast.LENGTH_SHORT);
toast.show();
return;
}
bos.flush();
bos.close();
ftpClient.logout();
ftpClient.disconnect();
}
catch (IOException e){
Toast.makeText(context,"Connection error!" , Toast.LENGTH_LONG).show();
return;
}
我會說這取決於你的應用程序中,除了該做的事情。如果超時,如果用戶想要做其他事情,可能會有點煩人。我想你可以使用異步HTTP客戶端。 – 2012-09-03 21:04:28