From e8f52aa35f2a86b649c4db0e8f2745c95fc0f74a Mon Sep 17 00:00:00 2001 From: jia Date: Sat, 14 Dec 2024 21:02:17 +0800 Subject: [PATCH] =?UTF-8?q?feat#=5F=E6=B3=A8=E9=94=80=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ifish/activity/MySettingActivity.java | 116 ++++++++++++------ .../java/com/ifish/basebean/BaseBean.java | 7 ++ .../java/com/ifish/utils/HttpManager.java | 34 +++++ .../src/main/res/layout/mygold_activity.xml | 3 +- 4 files changed, 120 insertions(+), 40 deletions(-) diff --git a/iFish7/src/main/java/com/ifish/activity/MySettingActivity.java b/iFish7/src/main/java/com/ifish/activity/MySettingActivity.java index 2621f5a08..a55c3880e 100644 --- a/iFish7/src/main/java/com/ifish/activity/MySettingActivity.java +++ b/iFish7/src/main/java/com/ifish/activity/MySettingActivity.java @@ -24,8 +24,10 @@ import android.widget.Toast; import androidx.core.app.ActivityCompat; +import com.ifish.activity.newbind.NewBindDeviceActivity; import com.ifish.basebean.BaseBean; import com.ifish.basebean.FinishMainActivity; +import com.ifish.basebean.User; import com.ifish.basebean.Version; import com.ifish.baseclass.BaseActivity; import com.ifish.baseclass.UriForFile; @@ -89,23 +91,15 @@ public class MySettingActivity extends BaseActivity { if (BuildConfig.DEBUG){ tvDebug = findMyViewById(R.id.tv_debug); tvDebug.setVisibility(View.VISIBLE); - tvDebug.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - startActivity(new Intent(MySettingActivity.this,PhoneInfoActivity.class)); - } - }); + tvDebug.setOnClickListener(view -> startActivity(new Intent(MySettingActivity.this,PhoneInfoActivity.class))); } TextView title_text = (TextView) findViewById(R.id.title_text); - title_text.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - clickCount++; - if (clickCount == MAX_CLICKS) { - startNewActivity(); - clickCount = 0; // 重置计数器 - } + title_text.setOnClickListener(v -> { + clickCount++; + if (clickCount == MAX_CLICKS) { + startNewActivity(); + clickCount = 0; // 重置计数器 } }); @@ -132,6 +126,58 @@ public class MySettingActivity extends BaseActivity { findViewById(R.id.rl_devicerestart).setOnClickListener(this); findViewById(R.id.rl_devicereset).setOnClickListener(this); findViewById(R.id.rl_bindphone).setOnClickListener(this); + findViewById(R.id.tv_exit).setOnClickListener(view -> exitAccount()); + } + + private void exitAccount(){ + AlertDialog.Builder dialog = new AlertDialog.Builder(this, AlertDialog.THEME_HOLO_LIGHT); + dialog.setCancelable(true); + dialog.setTitle("提示"); + dialog.setMessage("执行注销账号,您账号下的所有信息将从该平台彻底删除,且无法恢复,是否继续注销账户?"); + dialog.setNegativeButton("取消", (arg0, arg1) -> { + arg0.dismiss(); + }); + dialog.setPositiveButton("继续注销", (dialog1, which) -> { + dialog1.dismiss(); + hm.unregister(new HttpListener>() { + private int result; + @Override + public void success(BaseBean baseBean) { + result = baseBean.result; + if (baseBean.isSuccess()){ + SPUtil sp = SPUtil.getInstance(MySettingActivity.this); + sp.clear(); + Commons.clean(); + exitAccountSuccess(); + } + } + + @Override + public void finish() { + updateHandler.sendEmptyMessage(result); + } + + @Override + public void error(Exception e, String msg) { + result = Commons.NetWork.ERROR; + } + },Commons.USER.getUserId()); + }); + + L.i("jjia-------userId----"+Commons.USER.getUserId()); + dialog.show(); + } + private void exitAccountSuccess(){ + AlertDialog.Builder dialog = new AlertDialog.Builder(this, AlertDialog.THEME_HOLO_LIGHT); + dialog.setCancelable(true); + dialog.setTitle("提示"); + dialog.setMessage("账户注销成功,退出APP"); + dialog.setPositiveButton("退出", (dialog1, which) -> { + dialog1.dismiss(); + P2PHandler.getInstance().p2pDisconnect();//断开技威p2p连接 + ActivityManager.getInstance().exit(); + }); + dialog.show(); } @Override @@ -226,35 +272,27 @@ public class MySettingActivity extends BaseActivity { } } catch (Exception e1) { } - dialog.setNegativeButton("取消", new DialogInterface.OnClickListener() { - - @Override - public void onClick(DialogInterface dialog, int which) { - if ("1".equals(isMustUpdate)) { - dialog.dismiss(); - mNotificationManager.cancelAll();//清除通知栏 - P2PHandler.getInstance().p2pDisconnect();//断开技威p2p连接 - ActivityManager.getInstance().exit(); - } + dialog.setNegativeButton("取消", (dialog2, which) -> { + if ("1".equals(isMustUpdate)) { + dialog2.dismiss(); + mNotificationManager.cancelAll();//清除通知栏 + P2PHandler.getInstance().p2pDisconnect();//断开技威p2p连接 + ActivityManager.getInstance().exit(); } }); - dialog.setPositiveButton("确定", new DialogInterface.OnClickListener() { - - @Override - public void onClick(DialogInterface dialog, int which) { - if ("1".equals(isMustUpdate)) { - try { - //不关闭 - Field field = dialog.getClass().getSuperclass().getDeclaredField("mShowing"); - field.setAccessible(true); - field.set(dialog, false); - dialog.dismiss(); - } catch (Exception e) { - } + dialog.setPositiveButton("确定", (dialog1, which) -> { + if ("1".equals(isMustUpdate)) { + try { + //不关闭 + Field field = dialog1.getClass().getSuperclass().getDeclaredField("mShowing"); + field.setAccessible(true); + field.set(dialog1, false); + dialog1.dismiss(); + } catch (Exception e) { } - showDownloadApkDialog(); - dialog.dismiss(); } + showDownloadApkDialog(); + dialog1.dismiss(); }); dialog.show(); } diff --git a/iFish7/src/main/java/com/ifish/basebean/BaseBean.java b/iFish7/src/main/java/com/ifish/basebean/BaseBean.java index 183161b48..b73ec007a 100644 --- a/iFish7/src/main/java/com/ifish/basebean/BaseBean.java +++ b/iFish7/src/main/java/com/ifish/basebean/BaseBean.java @@ -1,5 +1,7 @@ package com.ifish.basebean; +import com.ifish.utils.Commons; + /** * * @ClassName: BaseBean @@ -11,4 +13,9 @@ public class BaseBean { public int result; public int total; public T data; + + public boolean isSuccess(){ + return Commons.NetWork.Success == result; + + } } diff --git a/iFish7/src/main/java/com/ifish/utils/HttpManager.java b/iFish7/src/main/java/com/ifish/utils/HttpManager.java index ff0a12f3c..09777b5c0 100644 --- a/iFish7/src/main/java/com/ifish/utils/HttpManager.java +++ b/iFish7/src/main/java/com/ifish/utils/HttpManager.java @@ -365,6 +365,40 @@ public class HttpManager { } }); } + public HttpHandler unregister(final HttpListener> httpListener, String userId) { + String url = getFullUrl(users_URL + v3_URL + "deregister.do"); + L.d(url); + RequestParams requestParams = new RequestParams(); + requestParams.addBodyParameter("userId", userId); + String curTime = System.currentTimeMillis() / 1000 + ""; + String nonce = getRandomNum() + ""; + requestParams.addHeader(APPKEY, appKey); + requestParams.addHeader(NONCE, nonce); + requestParams.addHeader(CURTIME, curTime); + requestParams.addHeader(CHECKSUM, MD5Util.GetMD5(appSecret + nonce + curTime)); + return http.send(HttpMethod.POST, url, requestParams, new RequestCallBack() { + @Override + public void onSuccess(ResponseInfo responseInfo) { + L.d(responseInfo.result.toString()); + BaseBean baseBean = null; + try { + baseBean = new Gson().fromJson(responseInfo.result, new TypeToken>() { + }.getType()); + } catch (Exception e) { + e.printStackTrace(); + } + httpListener.success(baseBean); + httpListener.finish(); + } + + @Override + public void onFailure(HttpException error, String msg) { + L.d("error=" + error + "msg=" + msg); + httpListener.error(error, msg); + httpListener.finish(); + } + }); + } /** * @param @param httpListener diff --git a/iFish7/src/main/res/layout/mygold_activity.xml b/iFish7/src/main/res/layout/mygold_activity.xml index 097d5bf1b..698c05a85 100644 --- a/iFish7/src/main/res/layout/mygold_activity.xml +++ b/iFish7/src/main/res/layout/mygold_activity.xml @@ -36,7 +36,8 @@ - +