Bladeren bron

YCVideoPlayer

yangchong 7 jaren geleden
bovenliggende
commit
9b8a4877e9
31 gewijzigde bestanden met toevoegingen van 327 en 49 verwijderingen
  1. 5 0
      YCVideoPlayerLib/src/main/java/org/yczbj/ycvideoplayerlib/AbsVideoPlayerController.java
  2. 4 1
      YCVideoPlayerLib/src/main/java/org/yczbj/ycvideoplayerlib/ChangeClarityDialog.java
  3. 2 1
      YCVideoPlayerLib/src/main/java/org/yczbj/ycvideoplayerlib/VideoPlayerController.java
  4. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/api/constant/Constant.java
  5. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/api/constant/ConstantImage.java
  6. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/api/constant/ConstantVideo.java
  7. 2 6
      app/src/main/java/org/yczbj/ycvideoplayer/api/http/InterceptorUtils.java
  8. 185 0
      app/src/main/java/org/yczbj/ycvideoplayer/api/manager/RetrofitWrapper.java
  9. 88 0
      app/src/main/java/org/yczbj/ycvideoplayer/base/BaseFragmentFactory.java
  10. 8 0
      app/src/main/java/org/yczbj/ycvideoplayer/model/Model.java
  11. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/model/bean/TabEntity.java
  12. 1 2
      app/src/main/java/org/yczbj/ycvideoplayer/ui/home/view/activity/VideoPlayerJzActivity.java
  13. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/home/view/activity/VideoPlayerMeActivity.java
  14. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/home/view/fragment/HomeFragment.java
  15. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/main/presenter/MainPresenter.java
  16. 5 9
      app/src/main/java/org/yczbj/ycvideoplayer/ui/main/view/activity/MainActivity.java
  17. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/TestMyActivity.java
  18. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMyFiveActivity.java
  19. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMyFourFragment.java
  20. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMySixFragment.java
  21. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMyThirdActivity.java
  22. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/download/DLTasksManager.java
  23. 1 3
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLHybridTestActivity.java
  24. 1 3
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLManyTestActivity.java
  25. 1 4
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLMyFileTestActivity.java
  26. 1 3
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLNotificationTestActivity.java
  27. 1 1
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLSingleTestActivity.java
  28. 1 3
      app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/GlideCropActivity.java
  29. 4 0
      app/src/main/java/org/yczbj/ycvideoplayer/util/AppUtil.java
  30. 3 0
      app/src/main/java/org/yczbj/ycvideoplayer/util/ImageUtil.java
  31. 1 0
      app/src/main/java/org/yczbj/ycvideoplayer/util/OkHttpUtils.java

+ 5 - 0
YCVideoPlayerLib/src/main/java/org/yczbj/ycvideoplayerlib/AbsVideoPlayerController.java

@@ -186,6 +186,7 @@ public abstract class AbsVideoPlayerController extends FrameLayout implements Vi
         mUpdateProgressTimer.schedule(mUpdateProgressTimerTask, 0, 1000);
     }
 
+
     /**
      * 取消更新进度的计时器。
      */
@@ -200,6 +201,7 @@ public abstract class AbsVideoPlayerController extends FrameLayout implements Vi
         }
     }
 
+
     /**
      * 更新进度,包括进度条进度,展示的当前播放位置时长,总时长等。
      */
@@ -307,6 +309,7 @@ public abstract class AbsVideoPlayerController extends FrameLayout implements Vi
         return false;
     }
 
+
     /**
      * 手势左右滑动改变播放位置时,显示控制器中间的播放位置变化视图,
      * 在手势滑动ACTION_MOVE的过程中,会不断调用此方法。
@@ -316,12 +319,14 @@ public abstract class AbsVideoPlayerController extends FrameLayout implements Vi
      */
     protected abstract void showChangePosition(long duration, int newPositionProgress);
 
+
     /**
      * 手势左右滑动改变播放位置后,手势up或者cancel时,隐藏控制器中间的播放位置变化视图,
      * 在手势ACTION_UP或ACTION_CANCEL时调用。
      */
     protected abstract void hideChangePosition();
 
+
     /**
      * 手势在右侧上下滑动改变音量时,显示控制器中间的音量变化视图,
      * 在手势滑动ACTION_MOVE的过程中,会不断调用此方法。

+ 4 - 1
YCVideoPlayerLib/src/main/java/org/yczbj/ycvideoplayerlib/ChangeClarityDialog.java

@@ -26,6 +26,7 @@ public class ChangeClarityDialog extends Dialog {
         init(context);
     }
 
+
     @Override
     public void onBackPressed() {
         // 按返回键时回调清晰度没有变化
@@ -35,6 +36,7 @@ public class ChangeClarityDialog extends Dialog {
         super.onBackPressed();
     }
 
+
     private void init(Context context) {
         mLinearLayout = new LinearLayout(context);
         mLinearLayout.setGravity(Gravity.CENTER);
@@ -60,12 +62,13 @@ public class ChangeClarityDialog extends Dialog {
         }
     }
 
+
     /**
      * 设置清晰度等级
      * @param items          清晰度等级items
      * @param defaultChecked 默认选中的清晰度索引
      */
-    public void setClarityGrade(List<String> items, int defaultChecked) {
+    void setClarityGrade(List<String> items, int defaultChecked) {
         mCurrentCheckedIndex = defaultChecked;
         for (int i = 0; i < items.size(); i++) {
             TextView itemView = (TextView) LayoutInflater.from(getContext())

+ 2 - 1
YCVideoPlayerLib/src/main/java/org/yczbj/ycvideoplayerlib/VideoPlayerController.java

@@ -30,7 +30,7 @@ import java.util.Locale;
 
 /**
  * @author yc
- * @date 2017/12/4
+ * @date 2017/9/4
  * 参考项目:
  * https://github.com/CarGuo/GSYVideoPlayer
  * https://github.com/danylovolokh/VideoPlayerManager
@@ -170,6 +170,7 @@ public class VideoPlayerController extends AbsVideoPlayerController implements V
         mChangeBrightnessProgress = (ProgressBar) findViewById(R.id.change_brightness_progress);
         mChangeVolume = (LinearLayout) findViewById(R.id.change_volume);
         mChangeVolumeProgress = (ProgressBar) findViewById(R.id.change_volume_progress);
+
         mError = (LinearLayout) findViewById(R.id.error);
         mRetry = (TextView) findViewById(R.id.retry);
         mCompleted = (LinearLayout) findViewById(R.id.completed);

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/api/Constant.java → app/src/main/java/org/yczbj/ycvideoplayer/api/constant/Constant.java

@@ -1,4 +1,4 @@
-package org.yczbj.ycvideoplayer.api;
+package org.yczbj.ycvideoplayer.api.constant;
 
 /**
  * Description:

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/api/ConstantImage.java → app/src/main/java/org/yczbj/ycvideoplayer/api/constant/ConstantImage.java

@@ -1,4 +1,4 @@
-package org.yczbj.ycvideoplayer.api;
+package org.yczbj.ycvideoplayer.api.constant;
 
 public class ConstantImage {
 

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/api/ConstantVideo.java → app/src/main/java/org/yczbj/ycvideoplayer/api/constant/ConstantVideo.java

@@ -1,4 +1,4 @@
-package org.yczbj.ycvideoplayer.api;
+package org.yczbj.ycvideoplayer.api.constant;
 
 
 

+ 2 - 6
app/src/main/java/org/yczbj/ycvideoplayer/util/InterceptorUtils.java → app/src/main/java/org/yczbj/ycvideoplayer/api/http/InterceptorUtils.java

@@ -1,4 +1,4 @@
-package org.yczbj.ycvideoplayer.util;
+package org.yczbj.ycvideoplayer.api.http;
 
 import android.util.Log;
 
@@ -69,7 +69,6 @@ public class InterceptorUtils {
         return headerInterceptor;
     }
 
-
     /**
      * 统一请求拦截器
      * 统一的请求参数
@@ -93,7 +92,6 @@ public class InterceptorUtils {
         return commonParams;
     }
 
-
     /**
      * 在无网络的情况下读取缓存,有网络的情况下根据缓存的过期时间重新请求
      * @return
@@ -111,7 +109,7 @@ public class InterceptorUtils {
                 }
                 Response response = chain.proceed(request);
                 if (NetworkUtils.isConnected()) {
-                    // 有网络情况下,根据请求接口的设置,配置缓存。
+                    //有网络情况下,根据请求接口的设置,配置缓存。
                     // 这样在下次请求时,根据缓存决定是否真正发出请求。
                     String cacheControl = request.cacheControl().toString();
                     //当然如果你想在有网络的情况下都直接走网络,那么只需要
@@ -135,7 +133,6 @@ public class InterceptorUtils {
         return commonParams;
     }
 
-
     /**
      * 自定义CookieJar
      * @param builder
@@ -158,5 +155,4 @@ public class InterceptorUtils {
         });
     }
 
-
 }

+ 185 - 0
app/src/main/java/org/yczbj/ycvideoplayer/api/manager/RetrofitWrapper.java

@@ -0,0 +1,185 @@
+package org.yczbj.ycvideoplayer.api.manager;
+
+import com.google.gson.FieldNamingPolicy;
+import com.google.gson.FieldNamingStrategy;
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+
+import org.yczbj.ycvideoplayer.api.http.InterceptorUtils;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.lang.reflect.Field;
+import java.security.SecureRandom;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+import java.util.concurrent.TimeUnit;
+
+import javax.net.ssl.HostnameVerifier;
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLSession;
+import javax.net.ssl.SSLSocketFactory;
+import javax.net.ssl.TrustManager;
+import javax.net.ssl.X509TrustManager;
+
+import okhttp3.OkHttpClient;
+import retrofit2.Retrofit;
+import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory;
+import retrofit2.converter.gson.GsonConverterFactory;
+
+/**
+ * ================================================
+ * 作    者:杨充
+ * 版    本:1.0
+ * 创建日期:2017/1/18
+ * 描    述:RetrofitWrapper
+ * 修订历史:
+ * ================================================
+ */
+public class RetrofitWrapper {
+
+    private static RetrofitWrapper instance;
+    private Retrofit mRetrofit;
+    private Gson gson;
+    private final OkHttpClient.Builder builder;
+
+
+    public static RetrofitWrapper getInstance(String url){
+        //synchronized 避免同时调用多个接口,导致线程并发
+        synchronized (RetrofitWrapper.class){
+            instance = new RetrofitWrapper(url);
+        }
+        return instance;
+    }
+
+
+    private RetrofitWrapper(String url) {
+        builder = new OkHttpClient.Builder();
+        //拦截日志,依赖
+        builder.addInterceptor(InterceptorUtils.getHttpLoggingInterceptor(true));
+        OkHttpClient build = builder.build();
+
+        //拦截日志,自定义拦截日志
+        //builder.addInterceptor(new LogInterceptor("YC"));
+
+        //添加请求头拦截器
+        //builder.addInterceptor(InterceptorUtils.getRequestHeader());
+
+        //添加统一请求拦截器
+        //builder.addInterceptor(InterceptorUtils.commonParamsInterceptor());
+
+        //添加缓存拦截器
+        //创建Cache
+        //File httpCacheDirectory = new File("OkHttpCache");
+        //Cache cache = new Cache(httpCacheDirectory, 10 * 1024 * 1024);
+        //builder.cache(cache);
+
+        //设置缓存
+        //builder.addNetworkInterceptor(InterceptorUtils.getCacheInterceptor());
+        //builder.addInterceptor(InterceptorUtils.getCacheInterceptor());
+
+        //添加自定义CookieJar
+        //InterceptorUtils.addCookie(builder);
+
+
+        // Install the all-trusting trust manager
+        initSSL();
+        //设置读取超时时间,连接超时时间,写入超时时间值
+        initTimeOut();
+        //错误重连
+        builder.retryOnConnectionFailure(true);
+
+        //解析json
+        gson = getJson();
+        //gson = new GsonBuilder().setLenient().create();
+        //获取实例
+        mRetrofit = new Retrofit
+                //设置OKHttpClient,如果不设置会提供一个默认的
+                .Builder()
+                //设置baseUrl
+                .baseUrl(url)
+                //添加Gson转换器
+                .addConverterFactory(GsonConverterFactory.create(gson))
+                .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
+                .client(build)
+                .build();
+    }
+
+
+    public <T> T create(final Class<T> service) {
+        return mRetrofit.create(service);
+    }
+
+    private Gson getJson() {
+        if (gson == null) {
+            GsonBuilder builder = new GsonBuilder();
+            builder.setLenient();
+            builder.setFieldNamingStrategy(new AnnotateNaming());
+            builder.serializeNulls();
+            gson = builder.create();
+        }
+        return gson;
+    }
+
+    private void initSSL() {
+        try {
+            final TrustManager[] trustAllCerts = new TrustManager[]{new X509TrustManager() {
+                @Override
+                public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
+
+                }
+
+                @Override
+                public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
+
+                }
+
+                @Override
+                public X509Certificate[] getAcceptedIssuers() {
+                    return new X509Certificate[]{};
+                }
+            }};
+
+            SSLContext sslContext = SSLContext.getInstance("TLS");
+            sslContext.init(null, trustAllCerts, new SecureRandom());
+            SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();
+            builder.sslSocketFactory(sslSocketFactory);
+            builder.hostnameVerifier(new HostnameVerifier() {
+                @Override
+                public boolean verify(String hostname, SSLSession session) {
+                    return true;
+                }
+            });
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+
+    private void initTimeOut() {
+        builder.readTimeout(20000, TimeUnit.SECONDS);
+        builder.connectTimeout(10000, TimeUnit.SECONDS);
+        builder.writeTimeout(20000, TimeUnit.SECONDS);
+    }
+
+
+    private static class AnnotateNaming implements FieldNamingStrategy {
+        @Override
+        public String translateName(Field field) {
+            ParamNames a = field.getAnnotation(ParamNames.class);
+            return a != null ? a.value() : FieldNamingPolicy.IDENTITY.translateName(field);
+        }
+    }
+
+}
+
+
+@Documented
+@Retention(RetentionPolicy.RUNTIME)
+@Target(ElementType.FIELD)
+@interface ParamNames {
+    String value();
+}

+ 88 - 0
app/src/main/java/org/yczbj/ycvideoplayer/base/BaseFragmentFactory.java

@@ -0,0 +1,88 @@
+package org.yczbj.ycvideoplayer.base;
+
+import org.yczbj.ycvideoplayer.ui.find.view.FindFragment;
+import org.yczbj.ycvideoplayer.ui.home.view.fragment.HomeFragment;
+import org.yczbj.ycvideoplayer.ui.me.view.MeFragment;
+import org.yczbj.ycvideoplayer.ui.special.SpecialFragment;
+
+
+/**
+ * ================================================
+ * 作    者:杨充
+ * 版    本:1.0
+ * 创建日期:2017/12/22
+ * 描    述:Fragment工厂
+ * 修订历史:
+ *      备注:看《Android源码设计》一书,学习设计模式并运用
+ * ================================================
+ */
+public class BaseFragmentFactory {
+
+    private static BaseFragmentFactory mInstance;
+    private HomeFragment mHomeFragment;
+    private SpecialFragment mSpecialFragment;
+    private FindFragment mFindFragment;
+    private MeFragment mMeFragment;
+
+    private BaseFragmentFactory() {}
+
+    public static BaseFragmentFactory getInstance() {
+        if (mInstance == null) {
+            synchronized (BaseFragmentFactory.class) {
+                if (mInstance == null) {
+                    mInstance = new BaseFragmentFactory();
+                }
+            }
+        }
+        return mInstance;
+    }
+
+
+    public HomeFragment getHomeFragment() {
+        if (mHomeFragment == null) {
+            synchronized (BaseFragmentFactory.class) {
+                if (mHomeFragment == null) {
+                    mHomeFragment = new HomeFragment();
+                }
+            }
+        }
+        return mHomeFragment;
+    }
+
+
+    public SpecialFragment getSpecialFragment() {
+        if (mSpecialFragment == null) {
+            synchronized (BaseFragmentFactory.class) {
+                if (mSpecialFragment == null) {
+                    mSpecialFragment = new SpecialFragment();
+                }
+            }
+        }
+        return mSpecialFragment;
+    }
+
+
+    public FindFragment getFindFragment() {
+        if (mFindFragment == null) {
+            synchronized (BaseFragmentFactory.class) {
+                if (mFindFragment == null) {
+                    mFindFragment = new FindFragment();
+                }
+            }
+        }
+        return mFindFragment;
+    }
+
+
+    public MeFragment getMeFragment() {
+        if (mMeFragment == null) {
+            synchronized (BaseFragmentFactory.class) {
+                if (mMeFragment == null) {
+                    mMeFragment = new MeFragment();
+                }
+            }
+        }
+        return mMeFragment;
+    }
+
+}

+ 8 - 0
app/src/main/java/org/yczbj/ycvideoplayer/model/Model.java

@@ -0,0 +1,8 @@
+package org.yczbj.ycvideoplayer.model;
+
+/**
+ * Created by yc on 2018/2/23.
+ */
+
+public class Model {
+}

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/bean/TabEntity.java → app/src/main/java/org/yczbj/ycvideoplayer/model/bean/TabEntity.java

@@ -1,4 +1,4 @@
-package org.yczbj.ycvideoplayer.bean;
+package org.yczbj.ycvideoplayer.model.bean;
 
 import com.flyco.tablayout.listener.CustomTabEntity;
 

+ 1 - 2
app/src/main/java/org/yczbj/ycvideoplayer/ui/home/view/activity/VideoPlayerJzActivity.java

@@ -32,14 +32,13 @@ import org.yczbj.ycrefreshviewlib.adapter.RecyclerArrayAdapter;
 import org.yczbj.ycrefreshviewlib.item.RecycleViewItemLine;
 import org.yczbj.ycrefreshviewlib.item.SpaceViewItemLine;
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.ui.home.contract.VideoPlayerJzContract;
 import org.yczbj.ycvideoplayer.ui.home.model.DialogListBean;
 import org.yczbj.ycvideoplayer.ui.home.model.VideoPlayerComment;
 import org.yczbj.ycvideoplayer.ui.home.model.VideoPlayerFavorite;
 import org.yczbj.ycvideoplayer.ui.home.presenter.VideoPlayerJzPresenter;
-import org.yczbj.ycvideoplayer.ui.home.view.adapter.DialogListAdapter;
 import org.yczbj.ycvideoplayer.ui.home.view.adapter.DownloadVideoAdapter;
 import org.yczbj.ycvideoplayer.ui.home.view.adapter.NarrowImageAdapter;
 import org.yczbj.ycvideoplayer.ui.home.view.adapter.VideoPlayerMeAdapter;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/home/view/activity/VideoPlayerMeActivity.java

@@ -29,7 +29,7 @@ import org.yczbj.ycrefreshviewlib.adapter.RecyclerArrayAdapter;
 import org.yczbj.ycrefreshviewlib.item.RecycleViewItemLine;
 import org.yczbj.ycrefreshviewlib.item.SpaceViewItemLine;
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.ui.home.contract.VideoPlayerMeContract;
 import org.yczbj.ycvideoplayer.ui.home.model.DialogListBean;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/home/view/fragment/HomeFragment.java

@@ -17,7 +17,7 @@ import com.yc.cn.ycbannerlib.first.util.SizeUtil;
 import com.yc.cn.ycbaseadapterlib.first.BaseViewHolder;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.Constant;
+import org.yczbj.ycvideoplayer.api.constant.Constant;
 import org.yczbj.ycvideoplayer.base.BaseDelegateAdapter;
 import org.yczbj.ycvideoplayer.base.BaseFragment;
 import org.yczbj.ycvideoplayer.ui.home.view.activity.VideoPlayerJzActivity;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/main/presenter/MainPresenter.java

@@ -7,7 +7,7 @@ import com.flyco.tablayout.listener.CustomTabEntity;
 
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.bean.TabEntity;
+import org.yczbj.ycvideoplayer.model.bean.TabEntity;
 import org.yczbj.ycvideoplayer.ui.main.contract.MainContract;
 import org.yczbj.ycvideoplayer.ui.main.view.activity.MainActivity;
 

+ 5 - 9
app/src/main/java/org/yczbj/ycvideoplayer/ui/main/view/activity/MainActivity.java

@@ -18,6 +18,7 @@ import com.ns.yc.ycutilslib.viewPager.NoSlidingViewPager;
 import org.yczbj.ycvideoplayer.R;
 import org.yczbj.ycvideoplayer.base.AppManager;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
+import org.yczbj.ycvideoplayer.base.BaseFragmentFactory;
 import org.yczbj.ycvideoplayer.base.BasePagerAdapter;
 import org.yczbj.ycvideoplayer.download.TasksManager;
 import org.yczbj.ycvideoplayer.ui.find.view.FindFragment;
@@ -133,15 +134,10 @@ public class MainActivity extends BaseActivity implements MainContract.View{
      */
     private void initViewPager() {
         List<Fragment> fragments = new ArrayList<>();
-        HomeFragment homeFragment = new HomeFragment();
-        SpecialFragment specialFragment = new SpecialFragment();
-        FindFragment findFragment = new FindFragment();
-        MeFragment meFragment = new MeFragment();
-        fragments.add(homeFragment);
-        fragments.add(specialFragment);
-        fragments.add(findFragment);
-        fragments.add(meFragment);
-
+        fragments.add(BaseFragmentFactory.getInstance().getHomeFragment());
+        fragments.add(BaseFragmentFactory.getInstance().getSpecialFragment());
+        fragments.add(BaseFragmentFactory.getInstance().getFindFragment());
+        fragments.add(BaseFragmentFactory.getInstance().getMeFragment());
         BasePagerAdapter adapter = new BasePagerAdapter(getSupportFragmentManager(), fragments);
         vpHome.setAdapter(adapter);
         vpHome.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/TestMyActivity.java

@@ -4,7 +4,7 @@ import android.view.View;
 import android.widget.Button;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.ui.me.view.MeLoginActivity;
 import org.yczbj.ycvideoplayer.ui.me.view.MeMemberActivity;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMyFiveActivity.java

@@ -5,7 +5,7 @@ import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.ui.test2.base.HomeKeyWatcher;
 import org.yczbj.ycvideoplayer.ui.test2.model.Video;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMyFourFragment.java

@@ -10,7 +10,7 @@ import android.view.View;
 import android.view.ViewGroup;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.ui.test2.model.Video;
 import org.yczbj.ycvideoplayerlib.VideoPlayer;
 import org.yczbj.ycvideoplayerlib.VideoPlayerManager;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMySixFragment.java

@@ -4,7 +4,7 @@ import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseFragment;
 import org.yczbj.ycvideoplayer.ui.test2.model.Video;
 import org.yczbj.ycvideoplayerlib.VideoPlayer;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/test2/view/TestMyThirdActivity.java

@@ -4,7 +4,7 @@ import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.ui.test2.model.Video;
 import org.yczbj.ycvideoplayerlib.VideoPlayer;

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/download/DLTasksManager.java

@@ -10,7 +10,7 @@ import com.liulishuo.filedownloader.FileDownloader;
 import com.liulishuo.filedownloader.model.FileDownloadStatus;
 import com.liulishuo.filedownloader.util.FileDownloadUtils;
 
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.ui.test3.ui.activity.DLManyTestActivity;
 import org.yczbj.ycvideoplayer.ui.test3.ui.adapter.DLManyAdapter;
 

+ 1 - 3
app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLHybridTestActivity.java

@@ -1,7 +1,6 @@
 package org.yczbj.ycvideoplayer.ui.test3.ui.activity;
 
 import android.annotation.SuppressLint;
-import android.os.Bundle;
 import android.text.Html;
 import android.util.Log;
 import android.view.View;
@@ -16,7 +15,7 @@ import com.liulishuo.filedownloader.FileDownloader;
 import com.liulishuo.filedownloader.util.FileDownloadUtils;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 
 import java.io.File;
@@ -24,7 +23,6 @@ import java.util.ArrayList;
 import java.util.List;
 
 import butterknife.Bind;
-import butterknife.ButterKnife;
 
 
 public class DLHybridTestActivity extends BaseActivity implements View.OnClickListener {

+ 1 - 3
app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLManyTestActivity.java

@@ -9,13 +9,11 @@ import android.view.View;
 import android.widget.LinearLayout;
 
 import com.blankj.utilcode.util.SizeUtils;
-import com.liulishuo.filedownloader.FileDownloader;
 
 import org.yczbj.ycrefreshviewlib.item.RecycleViewItemLine;
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
-import org.yczbj.ycvideoplayer.download.TasksManager;
 import org.yczbj.ycvideoplayer.listener.OnItemLongClickListener;
 import org.yczbj.ycvideoplayer.listener.OnListItemClickListener;
 import org.yczbj.ycvideoplayer.ui.test3.download.DLTasksManager;

+ 1 - 4
app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLMyFileTestActivity.java

@@ -13,13 +13,10 @@ import com.pedaily.yc.ycdialoglib.bottomLayout.BottomDialogFragment;
 
 import org.yczbj.ycrefreshviewlib.item.RecycleViewItemLine;
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.listener.OnListItemClickListener;
-import org.yczbj.ycvideoplayer.ui.home.model.DialogListBean;
 import org.yczbj.ycvideoplayer.ui.me.view.MeCacheActivity;
-import org.yczbj.ycvideoplayer.ui.me.view.MeMemberActivity;
-import org.yczbj.ycvideoplayer.ui.test3.download.DLTasksManagerModel;
 import org.yczbj.ycvideoplayer.ui.test3.download2.DlTasksManagerModel;
 import org.yczbj.ycvideoplayer.ui.test3.ui.adapter.DlMyFileAdapter;
 import org.yczbj.ycvideoplayer.util.AppUtil;

+ 1 - 3
app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLNotificationTestActivity.java

@@ -2,7 +2,6 @@ package org.yczbj.ycvideoplayer.ui.test3.ui.activity;
 
 import android.app.NotificationManager;
 import android.content.Context;
-import android.os.Bundle;
 import android.view.View;
 import android.widget.Button;
 import android.widget.CheckBox;
@@ -17,7 +16,7 @@ import com.liulishuo.filedownloader.notification.FileDownloadNotificationListene
 import com.liulishuo.filedownloader.util.FileDownloadUtils;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.ui.test3.ui.NotificationItem;
 
@@ -25,7 +24,6 @@ import java.io.File;
 import java.lang.ref.WeakReference;
 
 import butterknife.Bind;
-import butterknife.ButterKnife;
 
 /**
  * Created by yc on 2018/1/12.

+ 1 - 1
app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/DLSingleTestActivity.java

@@ -13,7 +13,7 @@ import com.liulishuo.filedownloader.util.FileDownloadUtils;
 import com.pedaily.yc.ycdialoglib.toast.ToastUtil;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantVideo;
+import org.yczbj.ycvideoplayer.api.constant.ConstantVideo;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.util.LogUtils;
 

+ 1 - 3
app/src/main/java/org/yczbj/ycvideoplayer/ui/test3/ui/activity/GlideCropActivity.java

@@ -2,7 +2,6 @@ package org.yczbj.ycvideoplayer.ui.test3.ui.activity;
 
 import android.graphics.Bitmap;
 import android.graphics.Matrix;
-import android.os.Bundle;
 import android.util.Log;
 import android.view.View;
 import android.widget.Button;
@@ -16,13 +15,12 @@ import com.bumptech.glide.request.target.SimpleTarget;
 import com.bumptech.glide.request.target.Target;
 
 import org.yczbj.ycvideoplayer.R;
-import org.yczbj.ycvideoplayer.api.ConstantImage;
+import org.yczbj.ycvideoplayer.api.constant.ConstantImage;
 import org.yczbj.ycvideoplayer.base.BaseActivity;
 import org.yczbj.ycvideoplayer.util.ImageCropUtils;
 import org.yczbj.ycvideoplayer.weight.HeightTransformation;
 
 import butterknife.Bind;
-import butterknife.ButterKnife;
 
 /**
  * Created by yc on 2018/1/10.

+ 4 - 0
app/src/main/java/org/yczbj/ycvideoplayer/util/AppUtil.java

@@ -204,6 +204,7 @@ public class AppUtil {
         }
     }
 
+
     /**
      * 设置页面的昏暗度
      * 主要作用于:弹窗时设置宿主Activity的背景色
@@ -223,6 +224,7 @@ public class AppUtil {
         }
     }
 
+
     /**
      * 背景模糊
      * 主要作用于:activity页面,建议不要用这种方式,可以使用模糊视图自定义控件【毛玻璃效果】
@@ -258,6 +260,7 @@ public class AppUtil {
         return true;
     }
 
+
     /**
      * 判断某Activity是否挂掉,主要是用于弹窗
      */
@@ -275,6 +278,7 @@ public class AppUtil {
         return false;
     }
 
+
     /**
      * 格式化毫秒值,如果这个毫秒值包含小时,则格式为时分秒,如:01:30:58,如果不包含小时,则格式化为分秒,如:30:58
      * @param duration

+ 3 - 0
app/src/main/java/org/yczbj/ycvideoplayer/util/ImageUtil.java

@@ -96,6 +96,7 @@ public class ImageUtil {
         }
     }
 
+
     /**
      * 加载图片
      * @param resId
@@ -120,6 +121,7 @@ public class ImageUtil {
         }
     }
 
+
     /**
      * 加载图片
      * @param resId
@@ -169,6 +171,7 @@ public class ImageUtil {
         }
     }
 
+
     /**------------------------------Glide加载图片--------------------------------------------------**/
 
 

+ 1 - 0
app/src/main/java/org/yczbj/ycvideoplayer/util/OkHttpUtils.java

@@ -2,6 +2,7 @@ package org.yczbj.ycvideoplayer.util;
 
 
 
+import org.yczbj.ycvideoplayer.api.http.InterceptorUtils;
 import org.yczbj.ycvideoplayer.base.BaseInterceptor;
 
 import java.io.File;