MCPcopy Index your code
hub / github.com/caikaidev/AppUpdate / UpdateWrapper

Class UpdateWrapper

lib/src/main/java/com/kcode/lib/UpdateWrapper.java:22–154  ·  view source on GitHub ↗

Created by caik on 2017/3/8.

Source from the content-addressed store, hash-verified

20 */
21
22public class UpdateWrapper {
23
24 private static final String TAG = "UpdateWrapper";
25
26 private Context mContext;
27 private String mUrl;
28 private String mToastMsg;
29 private CheckUpdateTask.Callback mCallback;
30 private int mNotificationIcon;
31 private long mTime;
32 private boolean mIsShowToast = true;
33 private Class<? extends FragmentActivity> mCls;
34
35 private UpdateWrapper() {
36 }
37
38 public void start() {
39
40 if (!NetWorkUtils.getNetworkStatus(mContext)) {
41 ToastUtils.show(mContext,R.string.update_lib_network_not_available);
42 return;
43 }
44 if (TextUtils.isEmpty(mUrl)) {
45 throw new RuntimeException("url not be null");
46 }
47
48 if (checkUpdateTime(mTime)) {
49 return;
50 }
51 new CheckUpdateTask(mContext,mUrl, mInnerCallBack).start();
52 }
53
54 private CheckUpdateTask.Callback mInnerCallBack = new CheckUpdateTask.Callback() {
55 @Override
56 public void callBack(VersionModel model, boolean hasNewVersion) {
57 if (model == null) {
58 mHandler.post(new Runnable() {
59 @Override
60 public void run() {
61 if (mIsShowToast) {
62 ToastUtils.show(mContext,
63 TextUtils.isEmpty(mToastMsg) ?
64 mContext.getResources().getString(R.string.update_lib_default_toast) : mToastMsg);
65 }
66
67 }
68 });
69 return;
70 }
71 //记录本次更新时间
72 PublicFunctionUtils.setLastCheckTime(mContext, System.currentTimeMillis());
73 if (mCallback != null) {
74 mCallback.callBack(model,hasNewVersion);
75 }
76
77 start2Activity(mContext, model);
78 }
79

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected