【发布时间】:2016-10-10 21:57:08
【问题描述】:
据我所知,Android 的AsyncTask 是一种从互联网异步加载信息的好方法。但是,我不想阻塞 UI 并阻止用户与之交互。
我的问题的基本描述。
目前,我正在使用 websockets 来发送/接收来自 web 服务器的数据。在诸如用户进入房间、从播放列表中添加或删除一首歌曲、一首歌曲被赞成或反对,或者一首歌曲结束而另一首歌曲开始等事件中,必须更新 UI 以指示更改。但理想情况下,这些更改会非常频繁地发生,这意味着不断阻止 UI 以刷新它会很麻烦和烦人。
如何在不中断用户活动的情况下更新我的 UI? AsyncTask 就够了吗?
【问题讨论】:
-
AsyncTask 不是唯一的方法。还有 Handlers 和 Loopers,您可以在 Communicating with the UI Thread 中阅读相关内容,然后是 Keeping your App Responsive。
标签: android multithreading user-interface android-asynctask websocket