나는 안드로이드 애플리케이션의 백엔드 서비스로 parse.com을 사용하고 있습니다. 내 활동과 구문 분석을 분리하고 싶습니다.이 목적을 위해 서비스 클래스 마법사가 활동을 연결하고 파싱합니다 (백엔드). 대부분의 구문 분석 함수는 비동기식이므로 실제로 처리하는 방법을 모르겠습니다. 예를 들어 사용자와 로그인하려면 구문 분석 로그인 함수로 로그인을 실행해야하는 서비스 객체를 호출합니다. 그래서 여기 활동에 내 코드입니다 :비동기 함수 호출
LoginService login = new LoginService("username", "password");
login.login();
//from here it is not correct
if(login.getLoginStatus() == 2) {
//user loggedin
}...
는 내 서비스 코드는 다음과 같습니다
public LoginSrvice(String userName, String pass)
{
this.userName = userName;
this.pass = pass;
}
public void loginUser()
{
ParseUser.logInInBackground(userName, pass, new LogInCallback()
{
@Override
public void done(ParseUser user, ParseException e) {
if (user != null) {
logedIn = 1;
} else {
logedIn = 2;
}
}
});
}
public int getLoginStatus()
{
return logedIn;
}
내 질문은 내가 바로 그것을 할 방법입니까? 어떻게하면 활동과 서비스를 분리하여 둘 수 있지만 서비스 클래스가 구문 분석으로부터 콜백을 얻을 때까지 활동의 응답을 기다린다. 사전에 도움을 주셔서 감사합니다!
예를 들어주세요. – vlio20
이 항목 : http://stackoverflow.com/questions/7713786/java-make-a-method-wait-for-a-response-of-another-process/7713815#7713815 샘플을 찾을 수 있습니다. 내가 말했듯이, 자바의 일반적인 프로 시저입니다. –