我创建了一个与服务器异步通信的应用程序。当应用程序向服务器发出请求时,会创建一个带有“正在加载”通知的新对话框(活动)。主要活动实现了处理服务器响应的方法,我想在主要活动从服务器接收到答案时关闭前台活动。
通知对话框的创建方式如下:
private void showServerRequestDialog(String actionLabel){
Intent intent = new Intent(this, DlgServerRequest.class);
intent.putExtra(SERVER_REQUEST_ACTION, actionLabel);
startActivity(intent);
}
因此,当用户尝试进行身份验证时,将调用以下方法:
private void authenticateUser(String IMEI, String username, String password){
mEncoderConnection.authenticateRequest(IMEI, username, password);
showServerRequestDialog("Authenticating...");
}
并且 onAuthenticateResponse 处理身份验证响应:
public void onAuthenticateResponse(AuthenticateResponse pkg) {
//code for response handling
//TODO: close ServerRequestDialog
}
}
如果有人可以建议在执行 onAuthenticateUser() 时关闭通知对话框 (DlgServerRequest) 的方法,我将不胜感激。