Skip to content

Commit fdbc164

Browse files
committed
Release to v1.1
1 parent 408a788 commit fdbc164

5 files changed

Lines changed: 24 additions & 8 deletions

File tree

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# ProgressManager
2-
[ ![Bintray](https://img.shields.io/badge/bintray-v1.0-brightgreen.svg) ](https://bintray.com/jessyancoding/maven/progressmanager/1.0/link)
2+
[ ![Bintray](https://img.shields.io/badge/bintray-v1.1-brightgreen.svg) ](https://bintray.com/jessyancoding/maven/progressmanager/1.1/link)
33
[ ![Build Status](https://travis-ci.org/JessYanCoding/ProgressManager.svg?branch=master) ](https://travis-ci.org/JessYanCoding/ProgressManager)
44
[ ![API](https://img.shields.io/badge/API-14%2B-blue.svg?style=flat-square) ](https://developer.android.com/about/versions/android-4.0.html)
55
[ ![License](http://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square) ](http://www.apache.org/licenses/LICENSE-2.0)
@@ -13,12 +13,12 @@
1313

1414

1515
## Introduction
16-
**ProgressManager** 一行代码即可监听 **App** 中所有网络链接的上传以及下载进度,包括 **Glide** 的图片加载进度,实现原理类似 **EventBus**,你可在 **App** 中的任何地方,将多个监听器,以 **Url** 地址作为标识符,注册到本框架,当此 **Url** 地址存在下载或者上传的动作时,会主动调用所有使用此 **Url** 地址注册过的监听器,达到多个模块的同步更新
16+
**ProgressManager** 一行代码即可监听 **App** 中所有网络链接的上传以及下载进度,包括 **Glide** 的图片加载进度,实现原理类似 **EventBus**,你可在 **App** 中的任何地方,将多个监听器,以 **Url** 地址作为标识符,注册到本框架,当此 **Url** 地址存在下载或者上传的动作时,框架会主动调用所有使用此 **Url** 地址注册过的监听器,达到多个模块的同步更新
1717

1818

1919
## Download
2020
``` gradle
21-
compile 'me.jessyan:progressmanager:1.0'
21+
compile 'me.jessyan:progressmanager:1.1'
2222
```
2323

2424
## Usage

app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,5 @@ dependencies {
3030
compile 'com.github.bumptech.glide:glide:3.8.0'
3131
compile 'com.github.bumptech.glide:okhttp3-integration:1.4.0@aar'
3232
compile project(':progress')
33-
// compile 'me.jessyan:progressmanager:1.0'
33+
// compile 'me.jessyan:progressmanager:1.1'
3434
}

app/src/main/java/me/jessyan/progressmanager/demo/MainActivity.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,6 @@ private void initListener() {
8282

8383
//Okhttp/Retofit 上传监听
8484
ProgressManager.getInstance().addRequestLisenter(UPLOAD_URL, getUploadListener());
85-
8685
}
8786

8887

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,6 @@ ext {
2525
targetSdkVersion = 25
2626
compileSdkVersion = 25
2727
buildToolsVersion = "25.0.3"
28-
versionCode = 1
29-
versionName = "1.0"
28+
versionCode = 2
29+
versionName = "1.1"
3030
}

progress/src/main/java/me/jessyan/progressmanager/ProgressManager.java

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
* ProgressManager 一行代码即可监听 App 中所有网络链接的上传以及下载进度,包括 Glide(需要将下载引擎切换为 Okhttp)的图片加载进度,
2121
* 基于 Okhttp Interceptor,所以使用前请确保你使用 Okhttp 或 Retrofit 进行网络请求
2222
* 实现原理类似 EventBus,你可在 App 中的任何地方,将多个监听器,以 Url 地址作为标识符,注册到本管理器
23-
* 当此 Url 地址存在下载或者上传的动作时,会主动调用所有使用此 Url 地址注册过的监听器,达到多个模块的同步更新
23+
* 当此 Url 地址存在下载或者上传的动作时,管理器会主动调用所有使用此 Url 地址注册过的监听器,达到多个模块的同步更新
2424
* 因为是通过 Url 作为唯一标识符,所以如果出现请求被重定向其他页面进行上传或者下载,那么就会出现获取不到进度的情况
2525
* Created by jess on 02/06/2017 18:37
2626
* Contact with jess.yan.effort@gmail.com
@@ -35,6 +35,20 @@ public final class ProgressManager {
3535

3636
private static volatile ProgressManager mProgressManager;
3737

38+
public static final boolean DEPENDENCY_OKHTTP;
39+
40+
static {
41+
boolean hasDependency;
42+
try {
43+
Class.forName("okhttp3.OkHttpClient");
44+
hasDependency = true;
45+
} catch (ClassNotFoundException e) {
46+
hasDependency = false;
47+
}
48+
DEPENDENCY_OKHTTP = hasDependency;
49+
}
50+
51+
3852
private ProgressManager() {
3953
this.mHandler = new Handler(Looper.getMainLooper());
4054
this.mInterceptor = new Interceptor() {
@@ -48,6 +62,9 @@ public Response intercept(Chain chain) throws IOException {
4862

4963
public static ProgressManager getInstance() {
5064
if (mProgressManager == null) {
65+
if (!DEPENDENCY_OKHTTP) { //使用本管理器必须依赖 Okhttp
66+
throw new IllegalStateException("Must be dependency Okhttp");
67+
}
5168
synchronized (ProgressManager.class) {
5269
if (mProgressManager == null) {
5370
mProgressManager = new ProgressManager();

0 commit comments

Comments
 (0)