Explorar o código

版本升级完成

詹子聪 %!s(int64=5) %!d(string=hai) anos
pai
achega
b6b30d9e0a
Modificáronse 30 ficheiros con 193 adicións e 33 borrados
  1. 1 1
      app/build.gradle
  2. 10 3
      app/src/main/java/com/itant/shibei/base/ApiService.java
  3. 17 0
      app/src/main/java/com/itant/shibei/bean/UpgradeBean.java
  4. 13 0
      app/src/main/java/com/itant/shibei/common/ICommonView.java
  5. 1 1
      app/src/main/java/com/itant/shibei/common/ConstantString.java
  6. 1 1
      app/src/main/java/com/itant/shibei/common/ConstantUrl.java
  7. 3 3
      app/src/main/java/com/itant/shibei/tool/DataTool.java
  8. 10 0
      app/src/main/java/com/itant/shibei/tool/SystemTool.java
  9. 37 1
      app/src/main/java/com/itant/shibei/ui/TabActivity.java
  10. 39 1
      app/src/main/java/com/itant/shibei/ui/home/about/AboutFragment.java
  11. 2 2
      app/src/main/java/com/itant/shibei/bean/CouponBean.java
  12. 0 1
      app/src/main/java/com/itant/shibei/ui/home/coupon/TemplateAdapter.java
  13. 0 1
      app/src/main/java/com/itant/shibei/ui/home/coupon/TemplateFragment.java
  14. 1 2
      app/src/main/java/com/itant/shibei/ui/home/coupon/TemplatePresenter.java
  15. 1 2
      app/src/main/java/com/itant/shibei/ui/home/goods/GoodsAdapter.java
  16. 1 1
      app/src/main/java/com/itant/shibei/bean/GoodsBean.java
  17. 0 1
      app/src/main/java/com/itant/shibei/ui/home/goods/GoodsFragment.java
  18. 0 1
      app/src/main/java/com/itant/shibei/ui/home/goods/GoodsPresenter.java
  19. 0 1
      app/src/main/java/com/itant/shibei/ui/home/goods/IGoodsView.java
  20. 1 1
      app/src/main/java/com/itant/shibei/ui/home/tool/ToolFragment.java
  21. 0 1
      app/src/main/java/com/itant/shibei/ui/home/tool/json/IJsonView.java
  22. 0 1
      app/src/main/java/com/itant/shibei/ui/home/tool/json/JsonActivity.java
  23. 1 1
      app/src/main/java/com/itant/shibei/bean/JsonBean.java
  24. 0 1
      app/src/main/java/com/itant/shibei/ui/home/tool/json/JsonPresenter.java
  25. 1 1
      app/src/main/java/com/itant/shibei/ui/mine/MineActivity.java
  26. 1 1
      app/src/main/java/com/itant/shibei/ui/mine/coupon/AddCouponActivity.java
  27. 1 1
      app/src/main/java/com/itant/shibei/ui/mine/coupon/AddCouponPresenter.java
  28. 1 1
      app/src/main/java/com/itant/shibei/ui/mine/goods/AddGoodsActivity.java
  29. 1 1
      app/src/main/java/com/itant/shibei/ui/mine/goods/AddGoodsPresenter.java
  30. 49 0
      app/src/main/java/com/itant/shibei/ui/upgrade/UpgradePresenter.java

+ 1 - 1
app/build.gradle

@@ -11,7 +11,7 @@ android {
         targetSdkVersion versions.targetSdk
         applicationId "com.itant.shibei"
         versionCode 1
-        versionName "1.0.1"
+        versionName "1.1"
         testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
     }
 

+ 10 - 3
app/src/main/java/com/itant/shibei/base/ApiService.java

@@ -1,9 +1,10 @@
 package com.itant.shibei.base;
 
 import com.itant.shibei.bean.BeiUser;
-import com.itant.shibei.bean.CouponBean;
-import com.itant.shibei.bean.GoodsBean;
-import com.itant.shibei.bean.JsonBean;
+import com.itant.shibei.bean.UpgradeBean;
+import com.itant.shibei.ui.home.coupon.CouponBean;
+import com.itant.shibei.ui.home.goods.GoodsBean;
+import com.itant.shibei.ui.home.tool.json.JsonBean;
 import com.miekir.network.core.base.BaseResponse;
 
 import java.util.List;
@@ -75,4 +76,10 @@ public interface ApiService {
     /**获取JSON bean*/
     @GET("/shibei/api/getJsonBean")
     Observable<BaseResponse<JsonBean>> getJsonBean();
+
+    /*----------------------------------------升级信息----------------------------------------*/
+    /**获取版本更新信息*/
+    @GET("/shibei/api/getUpgradeInfo")
+    Observable<BaseResponse<UpgradeBean>> getUpgradeInfo();
+
 }

+ 17 - 0
app/src/main/java/com/itant/shibei/bean/UpgradeBean.java

@@ -0,0 +1,17 @@
+package com.itant.shibei.bean;
+
+/**
+ * Created by Jason on 2019/09/29.
+ */
+public class UpgradeBean {
+    // Id自增,注意,一个表只能有一个主键,否则服务器会报500错误,启动失败
+    public int id;
+
+    public int versionCode;
+
+    public String versionName;
+
+    public String content;
+
+    public String url;
+}

+ 13 - 0
app/src/main/java/com/itant/shibei/common/ICommonView.java

@@ -0,0 +1,13 @@
+package com.itant.shibei.common;
+
+import com.miekir.mvp.view.IView;
+
+/**
+ *
+ *
+ * @author Miekir
+ * @date 2020/7/8 19:44
+ */
+public interface ICommonView<T> extends IView {
+    void onCommonResult(boolean success, String message, T resultBean);
+}

+ 1 - 1
app/src/main/java/com/itant/shibei/common/ConstantString.java

@@ -1,4 +1,4 @@
-package com.itant.shibei.common;
+package com.itant.shibei.constant;
 
 /**
  *

+ 1 - 1
app/src/main/java/com/itant/shibei/common/ConstantUrl.java

@@ -1,4 +1,4 @@
-package com.itant.shibei.common;
+package com.itant.shibei.constant;
 
 /**
  *

+ 3 - 3
app/src/main/java/com/itant/shibei/tool/DataTool.java

@@ -1,10 +1,10 @@
 package com.itant.shibei.tool;
 
 import com.itant.shibei.R;
-import com.itant.shibei.bean.CouponBean;
-import com.itant.shibei.bean.GoodsBean;
-import com.itant.shibei.common.ConstantUrl;
+import com.itant.shibei.constant.ConstantUrl;
 import com.itant.shibei.ui.function.FunctionFragment;
+import com.itant.shibei.ui.home.coupon.CouponBean;
+import com.itant.shibei.ui.home.goods.GoodsBean;
 
 import java.util.ArrayList;
 import java.util.List;

+ 10 - 0
app/src/main/java/com/itant/shibei/tool/SystemTool.java

@@ -28,6 +28,11 @@ public class SystemTool {
         return false;
     }
 
+    /**
+     * 获取版本code
+     * @param context
+     * @return
+     */
     public static int getVersionCode(Context context) {
         int versionCode = -1;
         PackageManager packageManager = context.getPackageManager();
@@ -43,6 +48,11 @@ public class SystemTool {
         return versionCode;
     }
 
+    /**
+     * 获取版本名字
+     * @param context
+     * @return
+     */
     public static String getVersionName(Context context) {
         PackageManager manager = context.getPackageManager();
         if (manager != null) {

+ 37 - 1
app/src/main/java/com/itant/shibei/ui/TabActivity.java

@@ -1,9 +1,13 @@
 package com.itant.shibei.ui;
 
+import android.content.DialogInterface;
 import android.content.Intent;
 import android.os.Bundle;
+import android.text.TextUtils;
 import android.view.View;
 
+import androidx.annotation.Nullable;
+import androidx.appcompat.app.AlertDialog;
 import androidx.fragment.app.Fragment;
 import androidx.viewpager.widget.ViewPager;
 
@@ -13,7 +17,10 @@ import com.google.android.material.appbar.AppBarLayout;
 import com.itant.shibei.R;
 import com.itant.shibei.base.BaseBeiActivity;
 import com.itant.shibei.base.ITopActionListener;
+import com.itant.shibei.bean.UpgradeBean;
+import com.itant.shibei.common.ICommonView;
 import com.itant.shibei.manager.UserInfoManager;
+import com.itant.shibei.tool.SystemTool;
 import com.itant.shibei.ui.function.FunctionFragment;
 import com.itant.shibei.ui.home.about.AboutFragment;
 import com.itant.shibei.ui.home.coupon.TemplateFragment;
@@ -22,15 +29,27 @@ import com.itant.shibei.ui.home.search.SearchActivity;
 import com.itant.shibei.ui.home.tool.ToolFragment;
 import com.itant.shibei.ui.mine.MineActivity;
 import com.itant.shibei.ui.mine.login.LoginActivity;
+import com.itant.shibei.ui.upgrade.UpgradePresenter;
 import com.itant.shibei.widget.AppbarTranslateListener;
 import com.miekir.common.adapter.TabFragmentAdapter;
+import com.miekir.common.utils.ActivityTool;
 import com.miekir.common.utils.ViewTool;
+import com.miekir.mvp.presenter.InjectPresenter;
 
 import java.util.ArrayList;
 import java.util.List;
 
-public class TabActivity extends BaseBeiActivity implements View.OnClickListener {
+public class TabActivity extends BaseBeiActivity implements View.OnClickListener, ICommonView<UpgradeBean> {
 
+    @InjectPresenter
+    UpgradePresenter upgradePresenter;
+
+    @Override
+    protected void onCreate(@Nullable Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        // 获取版本更新
+        upgradePresenter.getUpgradeInfo();
+    }
 
     @Override
     public int getLayoutID() {
@@ -114,4 +133,21 @@ public class TabActivity extends BaseBeiActivity implements View.OnClickListener
                 break;
         }
     }
+
+    @Override
+    public void onCommonResult(boolean success, String message, UpgradeBean resultBean) {
+        // 获取到了版本信息
+        if (success && resultBean != null && SystemTool.getVersionCode(this) < resultBean.versionCode) {
+            AlertDialog alertDialog = new AlertDialog.Builder(this)
+                    .setMessage(resultBean.content)
+                    .setNegativeButton("取消", (dialog, which) -> dialog.dismiss())
+                    .setPositiveButton("确定", (DialogInterface dialog, int which) -> {
+                        dialog.dismiss();
+                        if (!TextUtils.isEmpty(resultBean.url)) {
+                            ActivityTool.openUrl(TabActivity.this, resultBean.url);
+                        }
+                    }).create();
+            alertDialog.show();
+        }
+    }
 }

+ 39 - 1
app/src/main/java/com/itant/shibei/ui/home/about/AboutFragment.java

@@ -1,13 +1,22 @@
 package com.itant.shibei.ui.home.about;
 
+import android.content.DialogInterface;
 import android.os.Bundle;
+import android.text.TextUtils;
 import android.view.View;
 import android.widget.TextView;
 
 import androidx.annotation.Nullable;
+import androidx.appcompat.app.AlertDialog;
 
 import com.itant.shibei.R;
+import com.itant.shibei.bean.UpgradeBean;
+import com.itant.shibei.common.ICommonView;
 import com.itant.shibei.tool.SystemTool;
+import com.itant.shibei.ui.upgrade.UpgradePresenter;
+import com.miekir.common.utils.ActivityTool;
+import com.miekir.common.utils.ToastTool;
+import com.miekir.mvp.presenter.InjectPresenter;
 import com.miekir.mvp.view.BaseMVPFragment;
 
 /**
@@ -16,7 +25,10 @@ import com.miekir.mvp.view.BaseMVPFragment;
  * Description: 关于界面
  * todo 点击版本号检查更新
  */
-public class AboutFragment extends BaseMVPFragment implements View.OnClickListener {
+public class AboutFragment extends BaseMVPFragment implements View.OnClickListener, ICommonView<UpgradeBean> {
+
+    @InjectPresenter
+    UpgradePresenter upgradePresenter;
 
     @Override
     public void onCreateViewFinished(@Nullable Bundle savedInstanceState) {
@@ -24,6 +36,7 @@ public class AboutFragment extends BaseMVPFragment implements View.OnClickListen
         TextView tv_title = rootView.findViewById(R.id.tv_title);
         tv_title.setText(" 拾贝 v" + SystemTool.getVersionName(getActivity()));
         rootView.findViewById(R.id.tv_feedback).setOnClickListener(this);
+        rootView.findViewById(R.id.tv_update).setOnClickListener(this);
     }
 
     @Override
@@ -39,9 +52,34 @@ public class AboutFragment extends BaseMVPFragment implements View.OnClickListen
                 break;
 
             case R.id.tv_update:
+                showLoading();
+                upgradePresenter.getUpgradeInfo();
                 break;
             default:
                 break;
         }
     }
+
+    @Override
+    public void onCommonResult(boolean success, String message, UpgradeBean resultBean) {
+        dismissLoading();
+        // 获取到了版本信息
+        if (success &&
+                resultBean != null &&
+                SystemTool.getVersionCode(getActivity()) < resultBean.versionCode &&
+                !TextUtils.isEmpty(resultBean.url)) {
+            AlertDialog alertDialog = new AlertDialog.Builder(getActivity())
+                    .setMessage(resultBean.content)
+                    .setNegativeButton("取消", (dialog, which) -> dialog.dismiss())
+                    .setPositiveButton("确定", (DialogInterface dialog, int which) -> {
+                        dialog.dismiss();
+                        ActivityTool.openUrl(getActivity(), resultBean.url);
+                    }).create();
+            alertDialog.setCancelable(false);
+            alertDialog.setCanceledOnTouchOutside(false);
+            alertDialog.show();
+        } else {
+            ToastTool.showShort("当前已经是最新版本啦");
+        }
+    }
 }

+ 2 - 2
app/src/main/java/com/itant/shibei/bean/CouponBean.java

@@ -1,6 +1,6 @@
-package com.itant.shibei.bean;
+package com.itant.shibei.ui.home.coupon;
 
-import com.itant.shibei.common.ConstantUrl;
+import com.itant.shibei.constant.ConstantUrl;
 
 import java.io.Serializable;
 

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/coupon/TemplateAdapter.java

@@ -19,7 +19,6 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.chad.library.adapter.base.BaseViewHolder;
 import com.itant.shibei.R;
 import com.itant.shibei.base.ItemLongClickListener;
-import com.itant.shibei.bean.CouponBean;
 import com.itant.shibei.manager.UserInfoManager;
 import com.miekir.common.utils.ActivityTool;
 import com.miekir.common.utils.ToastTool;

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/coupon/TemplateFragment.java

@@ -12,7 +12,6 @@ import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
 
 import com.itant.shibei.R;
 import com.itant.shibei.base.ITopActionListener;
-import com.itant.shibei.bean.CouponBean;
 import com.itant.shibei.tool.DataTool;
 import com.itant.shibei.ui.function.FunctionFragment;
 import com.itant.shibei.ui.mine.goods.AddGoodsActivity;

+ 1 - 2
app/src/main/java/com/itant/shibei/ui/home/coupon/TemplatePresenter.java

@@ -3,7 +3,6 @@ package com.itant.shibei.ui.home.coupon;
 import android.text.TextUtils;
 
 import com.itant.shibei.base.ApiService;
-import com.itant.shibei.bean.CouponBean;
 import com.itant.shibei.net.RetrofitHelper;
 import com.miekir.mvp.presenter.BasePresenter;
 import com.miekir.network.core.base.BaseObserver;
@@ -20,7 +19,7 @@ import io.reactivex.schedulers.Schedulers;
  * @date 2020/7/8 19:43
  * Description: 模板的Presenter
  */
-public class TemplatePresenter extends BasePresenter<ITemplateView> {
+public class TemplatePresenter extends BasePresenter<ITemplateView<CouponBean>> {
 
 
     public void getTemplateData(int pageNum, int pageSize) {

+ 1 - 2
app/src/main/java/com/itant/shibei/ui/home/goods/GoodsAdapter.java

@@ -23,8 +23,7 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.chad.library.adapter.base.BaseViewHolder;
 import com.itant.shibei.R;
 import com.itant.shibei.base.ItemLongClickListener;
-import com.itant.shibei.bean.GoodsBean;
-import com.itant.shibei.common.ConstantString;
+import com.itant.shibei.constant.ConstantString;
 import com.itant.shibei.manager.UserInfoManager;
 import com.itant.shibei.tool.StringTool;
 import com.miekir.common.utils.ActivityTool;

+ 1 - 1
app/src/main/java/com/itant/shibei/bean/GoodsBean.java

@@ -1,4 +1,4 @@
-package com.itant.shibei.bean;
+package com.itant.shibei.ui.home.goods;
 
 import java.io.Serializable;
 

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/goods/GoodsFragment.java

@@ -12,7 +12,6 @@ import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
 
 import com.itant.shibei.R;
 import com.itant.shibei.base.ITopActionListener;
-import com.itant.shibei.bean.GoodsBean;
 import com.itant.shibei.tool.DataTool;
 import com.itant.shibei.ui.mine.goods.AddGoodsActivity;
 import com.itant.shibei.widget.DividerItemDecoration;

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/goods/GoodsPresenter.java

@@ -3,7 +3,6 @@ package com.itant.shibei.ui.home.goods;
 import android.text.TextUtils;
 
 import com.itant.shibei.base.ApiService;
-import com.itant.shibei.bean.GoodsBean;
 import com.itant.shibei.net.RetrofitHelper;
 import com.miekir.mvp.presenter.BasePresenter;
 import com.miekir.network.core.base.BaseObserver;

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/goods/IGoodsView.java

@@ -1,6 +1,5 @@
 package com.itant.shibei.ui.home.goods;
 
-import com.itant.shibei.bean.GoodsBean;
 import com.miekir.mvp.view.IView;
 
 import java.util.List;

+ 1 - 1
app/src/main/java/com/itant/shibei/ui/home/tool/ToolFragment.java

@@ -7,7 +7,7 @@ import android.view.View;
 import androidx.annotation.Nullable;
 
 import com.itant.shibei.R;
-import com.itant.shibei.common.ConstantUrl;
+import com.itant.shibei.constant.ConstantUrl;
 import com.itant.shibei.manager.UserInfoManager;
 import com.itant.shibei.ui.home.tool.json.JsonActivity;
 import com.itant.shibei.ui.home.tool.weather.WeatherActivity;

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/tool/json/IJsonView.java

@@ -1,6 +1,5 @@
 package com.itant.shibei.ui.home.tool.json;
 
-import com.itant.shibei.bean.JsonBean;
 import com.miekir.mvp.view.IView;
 
 /**

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/tool/json/JsonActivity.java

@@ -12,7 +12,6 @@ import com.itant.shibei.BuildConfig;
 import com.itant.shibei.R;
 import com.itant.shibei.base.BaseBeiActivity;
 import com.itant.shibei.bean.BeiUser;
-import com.itant.shibei.bean.JsonBean;
 import com.itant.shibei.manager.UserInfoManager;
 import com.itant.shibei.tool.SystemTool;
 import com.miekir.common.utils.ToastTool;

+ 1 - 1
app/src/main/java/com/itant/shibei/bean/JsonBean.java

@@ -1,4 +1,4 @@
-package com.itant.shibei.bean;
+package com.itant.shibei.ui.home.tool.json;
 
 /**
  * Copyright (C), 2019-2020, Miekir

+ 0 - 1
app/src/main/java/com/itant/shibei/ui/home/tool/json/JsonPresenter.java

@@ -3,7 +3,6 @@ package com.itant.shibei.ui.home.tool.json;
 import android.text.TextUtils;
 
 import com.itant.shibei.base.ApiService;
-import com.itant.shibei.bean.JsonBean;
 import com.itant.shibei.net.RetrofitHelper;
 import com.miekir.mvp.presenter.BasePresenter;
 import com.miekir.network.core.base.BaseObserver;

+ 1 - 1
app/src/main/java/com/itant/shibei/ui/mine/MineActivity.java

@@ -13,7 +13,7 @@ import androidx.appcompat.app.AlertDialog;
 import com.itant.shibei.R;
 import com.itant.shibei.base.BaseBeiActivity;
 import com.itant.shibei.bean.BeiUser;
-import com.itant.shibei.common.ConstantString;
+import com.itant.shibei.constant.ConstantString;
 import com.itant.shibei.manager.UserInfoManager;
 import com.itant.shibei.tool.StringTool;
 import com.itant.shibei.tool.TimeTool;

+ 1 - 1
app/src/main/java/com/itant/shibei/ui/mine/coupon/AddCouponActivity.java

@@ -7,7 +7,7 @@ import android.widget.CheckBox;
 import com.google.android.material.textfield.TextInputEditText;
 import com.itant.shibei.R;
 import com.itant.shibei.base.BaseBeiActivity;
-import com.itant.shibei.bean.CouponBean;
+import com.itant.shibei.ui.home.coupon.CouponBean;
 import com.miekir.common.utils.ToastTool;
 import com.miekir.common.utils.ViewTool;
 import com.miekir.mvp.presenter.InjectPresenter;

+ 1 - 1
app/src/main/java/com/itant/shibei/ui/mine/coupon/AddCouponPresenter.java

@@ -3,8 +3,8 @@ package com.itant.shibei.ui.mine.coupon;
 import android.text.TextUtils;
 
 import com.itant.shibei.base.ApiService;
-import com.itant.shibei.bean.CouponBean;
 import com.itant.shibei.net.RetrofitHelper;
+import com.itant.shibei.ui.home.coupon.CouponBean;
 import com.miekir.mvp.presenter.BasePresenter;
 import com.miekir.network.core.base.BaseObserver;
 

+ 1 - 1
app/src/main/java/com/itant/shibei/ui/mine/goods/AddGoodsActivity.java

@@ -8,7 +8,7 @@ import android.widget.CheckBox;
 import com.google.android.material.textfield.TextInputEditText;
 import com.itant.shibei.R;
 import com.itant.shibei.base.BaseBeiActivity;
-import com.itant.shibei.bean.GoodsBean;
+import com.itant.shibei.ui.home.goods.GoodsBean;
 import com.miekir.common.utils.ToastTool;
 import com.miekir.common.utils.ViewTool;
 import com.miekir.mvp.presenter.InjectPresenter;

+ 1 - 1
app/src/main/java/com/itant/shibei/ui/mine/goods/AddGoodsPresenter.java

@@ -3,8 +3,8 @@ package com.itant.shibei.ui.mine.goods;
 import android.text.TextUtils;
 
 import com.itant.shibei.base.ApiService;
-import com.itant.shibei.bean.GoodsBean;
 import com.itant.shibei.net.RetrofitHelper;
+import com.itant.shibei.ui.home.goods.GoodsBean;
 import com.miekir.mvp.presenter.BasePresenter;
 import com.miekir.network.core.base.BaseObserver;
 

+ 49 - 0
app/src/main/java/com/itant/shibei/ui/upgrade/UpgradePresenter.java

@@ -0,0 +1,49 @@
+package com.itant.shibei.ui.upgrade;
+
+import android.text.TextUtils;
+
+import com.itant.shibei.base.ApiService;
+import com.itant.shibei.bean.UpgradeBean;
+import com.itant.shibei.common.ICommonView;
+import com.itant.shibei.net.RetrofitHelper;
+import com.miekir.mvp.presenter.BasePresenter;
+import com.miekir.network.core.base.BaseObserver;
+
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.schedulers.Schedulers;
+
+/**
+ *
+ *
+ * @author Miekir
+ * @date 2020/7/8 19:43
+ * Description: 模板的Presenter
+ */
+public class UpgradePresenter extends BasePresenter<ICommonView<UpgradeBean>> {
+    /**
+     * 获取版本信息
+     */
+    public void getUpgradeInfo() {
+        RetrofitHelper.getInstance()
+                .getRequestApi(ApiService.class)
+                .getUpgradeInfo()
+                .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new BaseObserver<UpgradeBean>() {
+                    @Override
+                    public void onSuccess(UpgradeBean result) {
+                        if (getView() != null) {
+                            getView().onCommonResult(true, "", result);
+                        }
+                    }
+
+                    @Override
+                    public void onFailure(Throwable e, String errMsg) {
+                        if (getView() != null) {
+                            getView().onCommonResult(false, TextUtils.isEmpty(errMsg) ? "获取失败:"+e.getMessage() : errMsg, null);
+                        }
+                    }
+                });
+    }
+
+}