在Android中的AsyncTaskLoader中使用Update Throttle

时间:2014-02-07 04:17:08

标签: android loader asynctaskloader

我打算在即将推出的项目中使用AsyncTaskLoader。我已经了解了Loader Callbacks,Loader Manager和AsyncTaskLoader。

我还学习了如何实现asynctaskloader来执行网络操作。但是,我也想在我的用户界面中显示来自服务器的最新实时信息,就像facebook一样。

我遇到了setUpdateThrottle() in asynctaskloader。我想在我的项目中使用setUpdateThrottle,但我不知道如何使用它。我没有在网上找到任何可以告诉我如何使用它的令人满意的资源,即使官方的Android博客也没有说明如何在asynctaskloader中使用setUpdateThrottle。

所以,如果有人成功使用了setUpdateThrottle in asynctaskloader

1 个答案:

答案 0 :(得分:2)

你看到这个例子!!!!!!?

http://blog.gunawan.me/2011/10/android-asynctaskloader-exception.html

在上面的链接中看到这部分

private final LoaderCallbacks< AsyncResult < List < String >>> loaderCallbacks = new LoaderCallbacks< AsyncResult< List < String >>>() {

        @Override
        public Loader< AsyncResult < List < String>>> onCreateLoader(int id, Bundle args) {
            MyAsyncTaskLoader loader = new MyAsyncTaskLoader(TestActivity.this);
            loader.setUpdateThrottle(1000);

            return loader;
        }

        @Override
        public void onLoadFinished(Loader < AsyncResult < List < String >>> loader, final AsyncResult< List < String >> result) {

            Exception exception = result.getException();
            if (exception != null) {
                Toast.makeText(TestActivity.this, exception.getMessage(), Toast.LENGTH_SHORT).show();
            } else {
                // process the result
            }
        }

        @Override
        public void onLoaderReset(Loader < AsyncResult < List < String >>> loader) {
            loader.reset();
        }
    };