Android取消异步调用

时间:2013-01-02 08:55:28

标签: android quickblox

异步调用很棒,似乎所有使用Quickblox Android SDK的调用都是异步的,允许从主ui线程轻松实现。

但我需要能够中止对服务器的调用,因为我的调用是由同步适配器进行的,并且可以在过程中间取消或中止。

2 个答案:

答案 0 :(得分:3)

您可以在Android SDK中停用异步调用 - 请查看Synchronous requests are available

将此调用包装在您自己的异步任务或其他内容上。

然后您就可以取消查询

答案 1 :(得分:2)

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();