【问题标题】:Shall I switch from AsyncTask/http to Volley?我应该从 AsyncTask/http 切换到 Volley 吗?
【发布时间】:2014-07-16 13:03:44
【问题描述】:

我最近阅读了有关 Volley 的文章,它似乎是一个不错的框架。我想看看我的应用从 AsyncTask 切换到 Volley 是否有意义。

几个事实:
- 我使用AndroidHttpClient 作为单身人士
- 请求必须按顺序发送,几乎没有并行执行
- 不得使用缓存

Volley 会以某种方式加速我的应用程序吗?

【问题讨论】:

    标签: android android-asynctask android-volley


    【解决方案1】:

    Asynctask 有以下问题:

    1. 不支持方向更改,
    2. 无法取消网络调用,
    3. 同时进行 API 调用并不容易。
    4. 除了 FroyoGingerbread,AsyncTasks(由 默认)以序列化方式运行

    并且VolleyAsynctask 具有以下优势

    1. 比 AsyncTasks 更易于使用
    2. 清理了代码库并
    3. 快得多(快 50% 到 75%

    它管理网络请求的处理和缓存,并为开发人员节省了宝贵的时间,无需一次又一次地编写相同的网络调用/缓存代码。更少代码的另一个好处是更少的错误,这正是开发人员想要和追求的目标。

    所以Volley 可能是最好的选择。

    欲了解更多信息,请参阅Android Async HTTP Clients

    【讨论】:

    • 1.我不关心方向 2. 我可以轻松取消 HttpClient 呼叫 3. 正如我已经发布的那样,我的应用程序在网络呼叫方面主要是串行的 4. 我可以轻松切换到 threadExecutor,所以也不是问题.. ....... 1. 取决于 2. 仅当代码库已经一团糟时:) 3. 为什么它更快?
    • 再一次,我不会在我的应用程序中使用缓存
    • 是的,我做到了。只是一些数字和推测。未显示旧代码和新代码的具体外观。无论如何,我倾向于认为 Volley 的 速度 是单例使用和缓存的结果。如果 AsyncTask/AndroidHttpClient 在相同的条件下工作,它们应该不会慢很多:)
    • 一方面不尊重Volley,另一方面“不要修复工作系统”,我想看看 Volley 是否能在我的上下文中帮助我
    猜你喜欢
    • 2010-09-05
    • 1970-01-01
    • 1970-01-01
    • 2011-06-01
    • 2011-07-01
    • 2011-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多