Android アプリでは、チャット サービスにサードパーティ ベンダーを使用しています。ユーザーのセッションを作成し、ログインしてサービスを使用し、メッセージを取得する必要があります。すべては、成功コールバック内で呼び出す必要がある別個の HTTP リクエストです。では、以下のようにするにはどうすればよいですか。
ExternalService.createSession(param1, param2, new Callback<Session>() {
void onSuccess(Session session) {
session.login(new Callback<User> {
void onSuccess(User user) {
user.getMessages(new Callback<List<Messages>> {
void onSuccess(List<Messages> messages) {
// This is original place where everything is success
}
void onError(Error error) {
}
}
}
void onError(Error error) {
}
}
void onError(Error error) {
}
});
で実行すると、Activity問題なく正常に動作します。でそれを行う方法はService?Service私も実行に問題があるため、AsyncTaskエラーをスローします"Can't create handler inside thread that has not called Looper.prepare()"。Serviceを呼び出してブロックAsyncTaskの終わりに到達した後に終了します(私は理解しています、それが動作です)。しかし、使用せずにどうすれば達成できますか? または、 を使用せずに行う方法が他にない場合、必要なことを達成した後、どうすれば停止できますか? これを行うための最良のアプローチは何ですか?handleActionServiceLooperLooper