RxDownloader, 通过RxJava2下载下载管理器的歌曲/图片演示

分享于 

3分钟阅读

GitHub

  繁體 雙語
Demo of Downloading Songs/Images through Android Download Manager using RxJava2
  • 源代码名称:RxDownloader
  • 源代码网址:http://www.github.com/Ansh1234/RxDownloader
  • RxDownloader源代码文档
  • RxDownloader源代码下载
  • Git URL:
    git://www.github.com/Ansh1234/RxDownloader.git
    Git Clone代码到本地:
    git clone http://www.github.com/Ansh1234/RxDownloader
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/Ansh1234/RxDownloader
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    

    #Downloader 演示使用 RxJava

    概述

    这里项目用于使用RxJava2下载(。歌曲,图像等) 中的项目。 但是,有 2个条件我已经设置为下载。

    • 一次只能下载 2个项目。 因这里即使用户单击要下载的多个项目,它的中只有 2个下载,它的余下载将被排队。
    • 下载百分比显示给用户。 但仅当当前百分比和以前显示百分比之间的差异大于 5 % 时。

    演示

    我曾经使用过几个重要的RxJava类来完成这里项目:

    • 可观的 - 发出一系列事件
    • 发出事件流。 如果可以根据BackpressureStrategy的需要,使用或者 BackpressureStrategy.DROP. 创建可以流动性,如果可以移动项的数量大于订阅服务器所使用的项数,则可以将额外项缓冲或者丢弃。
    • 用于观察/订阅事件流的观察者。 每当观察者连接到可以观察的时候,就会收到一次性对象,这将被用来处理连接。 此类有 4个方法。
    • 订阅者- 与观察者类似,这个类还用于观察/订阅事件流,并有 4种方法。 但是,在连接时收到一个订阅选项,该选项被用来处理连接或者从流中请求新项。

    我写了一篇关于我如何使用RxJava2实现这个。 这里是邮局。

    注意 : 因为这是一个演示项目而不是实际项目,我将图片和url在客户端硬编码下载到 client。 没有服务器呼叫。 另外,对于每个项目,我保存下载状态并在共享偏好中下载百分比。 在实际的项目中,最好将它的保存在数据库中。

    我的其他项目

    AppDataReader - 在应用程序中读取共享首选项和数据库值的库。

    RxFbLiveVideoEmoticons - 使用RxJava2演示Fb实时视频React。

    WebViewDemo 演示如何在Android中使用WebViews的演示项目。


    相关文章