diff --git a/app/build.gradle b/app/build.gradle
index 809503e..4600785 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -39,7 +39,7 @@ android {
minSdkVersion 26
targetSdkVersion 30
versionCode 1
- versionName "1.0.1"//version 1.0.0-appstore version 1.0.0-xh
+ versionName "Version 1.0.1"//version 1.0.0-appstore version 1.0.0-xh
// 添加自定义字段
buildConfigField "String", "APP_VERSION_NAME", "\"${versionName}\""
buildConfigField "int", "APP_VERSION_CODE", "${versionCode}"
diff --git a/app/src/main/java/com/ckkj/water/dialog/DialogAppUpdate.java b/app/src/main/java/com/ckkj/water/dialog/DialogAppUpdate.java
index 87bb700..55b0d48 100644
--- a/app/src/main/java/com/ckkj/water/dialog/DialogAppUpdate.java
+++ b/app/src/main/java/com/ckkj/water/dialog/DialogAppUpdate.java
@@ -19,6 +19,7 @@ import android.view.WindowManager;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
+import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import android.widget.TextView;
@@ -48,8 +49,10 @@ public class DialogAppUpdate {
public static View layoutView;
private Dialog mDialog;
private Activity mContext;
- private TextView tvTitle,tvContent,tvConfirm,tvCancel;
+ private TextView tvTitle,tvContent,tvConfirm,tvCancel,tvVersionName;
+ private TextView tvProgressPercent;
private RelativeLayout rlUpdateContent;
+ private LinearLayout llProgressContainer,llButton;
private ImageView imgClose,imgClear;
private String startTime = "";
private String endTime = "";
@@ -84,7 +87,7 @@ public class DialogAppUpdate {
this.mContext = context;
this.mIsForceUpdate = isForceUpdate;
this.mVersionBean = bean;
- mDwonLoadUrl = bean.getVersionUrl();
+ mDwonLoadUrl = bean.getDownloadUrl();
mDialog = new Dialog(context, R.style.ActionSheetDialogStyle);
//填充对话框的布局
layoutView = LayoutInflater.from(context).inflate(layoutId, null);
@@ -122,29 +125,28 @@ public class DialogAppUpdate {
dialogWindow.setAttributes(lp);
}
tvTitle = layoutView.findViewById(R.id.tv_title);
+ tvVersionName = layoutView.findViewById(R.id.tv_version);
tvContent = layoutView.findViewById(R.id.tv_update_content);
tvConfirm = layoutView.findViewById(R.id.tv_update);
- tvCancel = layoutView.findViewById(R.id.tv_cencel);
+ tvCancel = layoutView.findViewById(R.id.tv_cancel);
progressBar = layoutView.findViewById(R.id.progress_bar);
rlUpdateContent = layoutView.findViewById(R.id.rel_file_content);
+ llProgressContainer = layoutView.findViewById(R.id.ll_progress_container);
+ llButton = layoutView.findViewById(R.id.Linear_button);
tvConfirm.setOnClickListener(onclick);
tvCancel.setOnClickListener(onclick);
if(isForceUpdate){
tvCancel.setVisibility(View.GONE);
}
- // 初始化 DownloadManager
- downloadManager = (DownloadManager) mContext.getSystemService(Context.DOWNLOAD_SERVICE);
- notificationManager = (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
+ tvVersionName.setText(bean.getLatestVersion());
+ // 解析更新说明,支持纯文本和HTML格式
+ String releaseNotes = bean.getReleaseNotes();
+ releaseNotes = releaseNotes.replace("\n", "
");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
- tvContent.setText(Html.fromHtml(bean.getVersionDescription(), Html.FROM_HTML_MODE_LEGACY));
+ tvContent.setText(Html.fromHtml(releaseNotes, Html.FROM_HTML_MODE_LEGACY));
} else {
+ tvContent.setText(Html.fromHtml(releaseNotes));
}
- String [] desStr = bean.getVersionDescription().split("#");
- String desLine = "";
- for(String str : desStr){
- desLine = desLine + str + "\n";
- }
- tvContent.setText(desLine);
tvContent.setLineSpacing(0, 1.2f);
}
@@ -165,7 +167,7 @@ public class DialogAppUpdate {
}
startUpdateApp();
break;
- case R.id.tv_cencel:
+ case R.id.tv_cancel:
dismiss();
AppConfig.USER_CONFIRM_UPDATE_APP = true;
break;
@@ -176,8 +178,8 @@ public class DialogAppUpdate {
public void startUpdateApp() {
//强制更新,不需要隐藏dialog
if(mIsForceUpdate){
- progressBar.setVisibility(View.VISIBLE);
- rlUpdateContent.setVisibility(View.GONE);
+ llProgressContainer.setVisibility(View.VISIBLE);
+ llButton.setVisibility(View.GONE);
progressBar.setMax(100);
}else{
ToastUtil.showShort(mContext,"可在任务栏查看下载进度");
diff --git a/app/src/main/java/com/ckkj/water/index/IndexFragment.java b/app/src/main/java/com/ckkj/water/index/IndexFragment.java
index 22a9a8e..954e06b 100644
--- a/app/src/main/java/com/ckkj/water/index/IndexFragment.java
+++ b/app/src/main/java/com/ckkj/water/index/IndexFragment.java
@@ -276,7 +276,8 @@ public class IndexFragment extends BaseFragment map, CallBack callBack);
//运势
void getYunshiData(Map map, CallBack callBack);
}
diff --git a/app/src/main/java/com/ckkj/water/main/MainImpl.java b/app/src/main/java/com/ckkj/water/main/MainImpl.java
index 56eede1..e3e4018 100644
--- a/app/src/main/java/com/ckkj/water/main/MainImpl.java
+++ b/app/src/main/java/com/ckkj/water/main/MainImpl.java
@@ -20,13 +20,13 @@ public class MainImpl implements MainContract.DataModel{
/**
* 检测新版本
- * @param jsonObject
+ * @param map
* @param callBack
*/
@Override
- public void checkAppVersionCode(JSONObject jsonObject, MainContract.CallBack callBack) {
+ public void checkAppVersionCode(Map map, MainContract.CallBack callBack) {
try {
- NetWorkManager.getRequest().checkVersionCode(NetWorkManager.getToken(),NetWorkManager.toRequestBody(jsonObject))
+ NetWorkManager.getRequest().checkVersionCode(NetWorkManager.getToken(),map)
.subscribeOn(Schedulers.io())
.unsubscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
diff --git a/app/src/main/java/com/ckkj/water/main/MainPresenter.java b/app/src/main/java/com/ckkj/water/main/MainPresenter.java
index fa6bc4d..b4ca6d9 100644
--- a/app/src/main/java/com/ckkj/water/main/MainPresenter.java
+++ b/app/src/main/java/com/ckkj/water/main/MainPresenter.java
@@ -1,5 +1,6 @@
package com.ckkj.water.main;
+import com.ckkj.water.BuildConfig;
import com.ckkj.water.base.BasePresenter;
import com.ckkj.water.main.entity.CheckVersionEntity;
@@ -20,8 +21,10 @@ public class MainPresenter extends BasePresenter {
* 获取用户信息
*/
public void checkNewVersion() {
- JSONObject json = new JSONObject();
- mainImpl.checkAppVersionCode(json, new MainContract.CallBack() {
+ Map map = new HashMap<>();
+ map.put("platform","android");
+ map.put("currentVersion", BuildConfig.APP_VERSION_NAME);
+ mainImpl.checkAppVersionCode(map, new MainContract.CallBack() {
@Override
public void success(CheckVersionEntity bean) {
if( MainPresenter.this.getView() != null){
diff --git a/app/src/main/java/com/ckkj/water/main/activity/MainActivity.java b/app/src/main/java/com/ckkj/water/main/activity/MainActivity.java
index 845b9e9..8e0b659 100644
--- a/app/src/main/java/com/ckkj/water/main/activity/MainActivity.java
+++ b/app/src/main/java/com/ckkj/water/main/activity/MainActivity.java
@@ -103,7 +103,7 @@ public class MainActivity extends BaseActivity versionCode){
+ if(bean.getVersionCode() > versionCode){
//App更新dialog
- mUpdateDialog = new DialogAppUpdate(mContext,R.layout.dialog_app_update,isForceUpdate,bean);
+ mUpdateDialog = new DialogAppUpdate(mContext,R.layout.dialog_app_update_water,isForceUpdate,bean);
mUpdateDialog.show();
mUpdateDialog.setOnDialogListener(new DialogAppUpdate.DialogListener() {
@Override
diff --git a/app/src/main/java/com/ckkj/water/main/entity/CheckVersionEntity.java b/app/src/main/java/com/ckkj/water/main/entity/CheckVersionEntity.java
index 019a7d5..a43f7f2 100644
--- a/app/src/main/java/com/ckkj/water/main/entity/CheckVersionEntity.java
+++ b/app/src/main/java/com/ckkj/water/main/entity/CheckVersionEntity.java
@@ -1,41 +1,32 @@
package com.ckkj.water.main.entity;
-import com.google.gson.annotations.SerializedName;
-
import java.io.Serializable;
import lombok.Data;
import lombok.NoArgsConstructor;
-@NoArgsConstructor
@Data
+@NoArgsConstructor
public class CheckVersionEntity implements Serializable {
- @SerializedName("versionNumber")
- private int versionNumber;
- @SerializedName("versionEnd")
- private String versionEnd;
- @SerializedName("versionCoercion")
- private String versionCoercion;
- @SerializedName("versionDescription")
- private String versionDescription;
- @SerializedName("versionName")
- private String versionName;
- @SerializedName("versionUrl")
- private String versionUrl;
- @SerializedName("versionHide1")
- private String versionHide1;
- @SerializedName("versionHide2")
- private String versionHide2;
- @SerializedName("versionHide3")
- private String versionHide3;
- @SerializedName("versionHide4")
- private String versionHide4;
- @SerializedName("versionHide5")
- private Object versionHide5;
- @SerializedName("versionHide6")
- private Object versionHide6;
- @SerializedName("paipanApiKey")
- private String paipanApiKey;
+ /**
+ * platform : android
+ * currentVersion : 1.0.1
+ * latestVersion : 1.0.0
+ * versionCode : 1
+ * updateAvailable : true
+ * forceUpdate : false
+ * downloadUrl : null
+ * releaseNotes : null
+ */
+
+ private String platform;
+ private String currentVersion;
+ private String latestVersion;
+ private int versionCode;
+ private boolean updateAvailable;
+ private boolean forceUpdate;
+ private String downloadUrl;
+ private String releaseNotes;
}
diff --git a/app/src/main/java/com/ckkj/water/mine/MineCenterFragment.java b/app/src/main/java/com/ckkj/water/mine/MineCenterFragment.java
index 57cc4c7..cbcf02c 100644
--- a/app/src/main/java/com/ckkj/water/mine/MineCenterFragment.java
+++ b/app/src/main/java/com/ckkj/water/mine/MineCenterFragment.java
@@ -6,6 +6,7 @@ import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
+import com.bumptech.glide.Glide;
import com.ckkj.water.AppConfig;
import com.ckkj.water.ConstantUtil;
import com.ckkj.water.R;
@@ -143,6 +144,13 @@ public class MineCenterFragment extends BaseFragment {
/**
* 修改用户信息
- * @param content
+ * @param nickName
+ * @param avatar
*/
- public void updateUserInfo(String content) {
+ public void updateUserInfo(String nickName,String avatar) {
try {
JSONObject json = new JSONObject();
- json.put("nickName", content);
+ if(!TextUtils.isEmpty(avatar)){
+ json.put("nickName", nickName);
+ }
+ if(!TextUtils.isEmpty(avatar)){
+ json.put("avatar", avatar);
+ }
impl.updateUserInfo(json, new MineContract.CallBack() {
@Override
public void success(BaseBean bean) {
@@ -142,6 +150,7 @@ public class MinePresenter extends BasePresenter {
public void success(MineUserInfoBean bean) {
if (MinePresenter.this.getView() != null) {
MinePresenter.this.getView().uploadImageSuccess(bean);
+ updateUserInfo(null,bean.getUrl());
}
}
diff --git a/app/src/main/java/com/ckkj/water/network/Request.java b/app/src/main/java/com/ckkj/water/network/Request.java
index d76e82b..9fcb0c8 100644
--- a/app/src/main/java/com/ckkj/water/network/Request.java
+++ b/app/src/main/java/com/ckkj/water/network/Request.java
@@ -148,8 +148,8 @@ public interface Request {
- @POST("mobile/version?end=android")
- Observable> checkVersionCode(@HeaderMap Map headMap, @Body RequestBody requestBody);
+ @GET("app/v1/checkVersion")
+ Observable> checkVersionCode(@HeaderMap Map headMap, @QueryMap Map map);
//版本检测更新
@POST("mine/api/versionNum")
Observable> getVersionCheck(@HeaderMap Map headMap, @QueryMap Map map);
diff --git a/app/src/main/res/layout/dialog_app_update_water.xml b/app/src/main/res/layout/dialog_app_update_water.xml
new file mode 100644
index 0000000..6b1f9ae
--- /dev/null
+++ b/app/src/main/res/layout/dialog_app_update_water.xml
@@ -0,0 +1,170 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/mine_fragment_layout.xml b/app/src/main/res/layout/mine_fragment_layout.xml
index 2270d38..f14b81e 100644
--- a/app/src/main/res/layout/mine_fragment_layout.xml
+++ b/app/src/main/res/layout/mine_fragment_layout.xml
@@ -24,7 +24,8 @@
android:layout_width="@dimen/dp_60"
android:layout_height="@dimen/dp_60"
app:riv_corner_radius="@dimen/dp_30"
- android:src="@mipmap/img_pay_weixin"
+ android:scaleType="centerCrop"
+ android:src="@mipmap/icon_mine_user_head_defaul"
android:layout_marginLeft="20dp"/>