From dc11485a2206b3ea863146d291995fa91c8904b3 Mon Sep 17 00:00:00 2001 From: wangxiang <1827945911@qq.com> Date: Tue, 9 Jan 2024 17:53:33 +0800 Subject: [PATCH] login up --- .../push/ui/activity/LoginActivity.java | 122 ++++-------------- .../kanglai/push/ui/vm/LoginViewModel.java | 3 +- 2 files changed, 26 insertions(+), 99 deletions(-) diff --git a/app/src/main/java/com/kanglai/push/ui/activity/LoginActivity.java b/app/src/main/java/com/kanglai/push/ui/activity/LoginActivity.java index e3b8792..0a0a115 100644 --- a/app/src/main/java/com/kanglai/push/ui/activity/LoginActivity.java +++ b/app/src/main/java/com/kanglai/push/ui/activity/LoginActivity.java @@ -1,7 +1,7 @@ package com.kanglai.push.ui.activity; import android.Manifest; -import android.content.Context; +import android.app.AlertDialog; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Bundle; @@ -14,22 +14,16 @@ import android.widget.TextView; import androidx.core.app.NotificationManagerCompat; -import com.blankj.utilcode.util.ObjectUtils; +import com.blankj.utilcode.util.PermissionUtils; import com.blankj.utilcode.util.StringUtils; -import com.blankj.utilcode.util.Utils; +import com.dolphin.core.base.AppManager; import com.dolphin.core.base.BaseActivity; import com.dolphin.core.constant.AppConstant; import com.dolphin.core.util.PermissionUtil; -import com.dolphin.core.util.ToastUtil; -import com.dolphin.umeng.UmengClient; -import com.dolphin.umeng.enums.PlatformEnum; -import com.google.gson.Gson; import com.kanglai.push.BR; import com.kanglai.push.R; import com.kanglai.push.databinding.ActivityLoginBinding; import com.kanglai.push.ui.vm.LoginViewModel; -import com.kanglai.push.ui.vm.PushTypeViewModel; -import com.kanglai.push.util.CountDownTimerUtils; import com.kanglai.push.util.ViewFilterUtil; import com.kongzue.dialogx.dialogs.MessageDialog; import com.kongzue.dialogx.interfaces.OnDialogButtonClickListener; @@ -61,12 +55,10 @@ public class LoginActivity extends BaseActivity { - if (ObjectUtils.isEmpty(data)) return; - ToastUtil.show(new Gson().toJson(data)); - }); - } - - /** QQ登录点击事件 - 已废弃 */ - public void qqLoginClick(View view) { - if(!UmengClient.isAppInstalled(this, PlatformEnum.QQ)) { - ToastUtil.show("当前没有安装QQ!"); - return; - } - UmengClient.login(this, PlatformEnum.QQ, (platformEnum, data) -> { - if (ObjectUtils.isEmpty(data)) return; - ToastUtil.show(new Gson().toJson(data)); - }); - } - @Override protected void onResume() { super.onResume(); if (requestPermissionNeedCheck) checkPermissions(needPermissions); - if (!NotificationManagerCompat.from(getApplicationContext()).areNotificationsEnabled()) { // 通知栏权限检测 - NoticeBoardDialog(); - } - } - - /** 通知栏权限申请提醒 同意进 | 取消则退出程序 */ - private void NoticeBoardDialog() { - MessageDialog.show(getString(com.dolphin.core.R.string.app_name) + " 想要获取此设备的通知栏权限?", "", "前往设置", "取 消") - .setOkButton(new OnDialogButtonClickListener() { - @Override - public boolean onClick(MessageDialog dialog, View v) { - dialog.dismiss(); - Intent intent = new Intent(); - intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS"); - intent.putExtra("android.provider.extra.APP_PACKAGE", getPackageName()); - startActivity(intent); - return true; - } - }) - .setCancelButton(new OnDialogButtonClickListener() { - @Override - public boolean onClick(MessageDialog dialog, View v) { - Process.killProcess(Process.myPid()); // 不同意调用通知栏权限,退出app - return false; - } - }) - .setCancelable(false) // 无法通过点击对话框之外的区域或按下返回按钮来快速关闭对话框 - .show(); } /** 检查软件所需要的权限,没有则弹出软件权限申请框申请 */ @@ -182,35 +121,22 @@ public class LoginActivity extends BaseActivity() { - @Override - public boolean onClick(MessageDialog dialog, View v) { - dialog.dismiss(); - Intent intent = new Intent(android.provider.Settings.ACTION_NOTIFICATION_POLICY_ACCESS_SETTINGS); - intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - Utils.getApp().startActivity(intent); - return true; - } - }) - .setCancelButton(new OnDialogButtonClickListener() { - @Override - public boolean onClick(MessageDialog dialog, View v) { + if (!NotificationManagerCompat.from(getApplicationContext()).areNotificationsEnabled()) { + new AlertDialog.Builder(this) + .setTitle("授权设备权限") + .setMessage(getString(com.dolphin.core.R.string.app_name) + " 想要获取此设备的通知权限?") + .setNegativeButton("取消", (dialog, which) -> AppManager.getAppManager().finishAllActivity()) + .setPositiveButton("前往设置", (dialog, which) -> { dialog.dismiss(); - return false; - } - }) - .setCancelable(false) // 无法通过点击对话框之外的区域或按下返回按钮来快速关闭对话框 - .show(); + Intent intent = new Intent(); + intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS"); + intent.putExtra("android.provider.extra.APP_PACKAGE", getPackageName()); + startActivity(intent); + }) + .setCancelable(false) + .show(); + } + } } @Override diff --git a/app/src/main/java/com/kanglai/push/ui/vm/LoginViewModel.java b/app/src/main/java/com/kanglai/push/ui/vm/LoginViewModel.java index cab02d4..5c21632 100644 --- a/app/src/main/java/com/kanglai/push/ui/vm/LoginViewModel.java +++ b/app/src/main/java/com/kanglai/push/ui/vm/LoginViewModel.java @@ -71,7 +71,7 @@ public class LoginViewModel extends BaseViewModel { public ObservableField captcha = new ObservableField(""); /** 隐私协议确认按钮 */ - public ObservableField agreement = new ObservableField<>(false); + public ObservableField agreement = new ObservableField<>(true); /** 清空电话号码操作图标可见 */ public ObservableInt phoneCleanVisible = new ObservableInt(); @@ -273,6 +273,7 @@ public class LoginViewModel extends BaseViewModel { MMKV.defaultMMKV().putString(CacheConstant.LOGIN_PASSWORD, password.get()); CacheDiskUtils.getInstance().put(CacheConstant.USER_INFO, user); startActivity(TabBarActivity.class); + finish(); } } else ToastUtil.showBottomWarn(R.getMsg()); }