非同期呼び出しは素晴らしく、Quickblox Android SDK を使用するすべての呼び出しは非同期であり、メインの UI スレッドから簡単に実装できるようです。
しかし、私の呼び出しは同期アダプターによって行われ、プロセスの途中でキャンセルまたは中止される可能性があるため、サーバーへの呼び出しを中止する機能が必要です。
Android SDK で非同期呼び出しを無効にすることができます -同期リクエストが利用可能であることを確認してください
そして、この呼び出しを独自の非同期タスクなどでラップします。
その後、クエリをキャンセルできます
Android SDK 0.7 がリリースされましたhttp://quickblox.com/blog/2013/01/android-sdk-0-7/
次のコードを使用して、クエリをキャンセルします。
QBRequestCanceler canceler = QBUsers.getUser(37823232, new QBCallbackImpl() {
@Override
public void onComplete(Result result) {
if (result.isSuccess()) {
QBUserResult qbUserResult = (QBUserResult) result;
System.out.println(">>> User: " + qbUserResult.getUser().toString());
} else {
handleErrors(result);
}
}
});
...
// cancel if need
canceler.cancel();