Android アプリケーションのバックエンド サービスとして 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;
}
私の質問は、どうすれば正しいですか?アクティビティとサービスの両方を分離したままにし、サービス クラスが解析からコールバックを取得するまでアクティビティの応答を待つにはどうすればよいですか。事前に助けてくれてありがとう!