android 让应用恢复前台显示_Android程序由后台切换到前台

本文介绍了如何在Android应用从后台切换到前台时实现密码验证。通过在BaseActivity中检测应用状态,当不在登录界面时显示一个对话框要求用户输入密码。对话框的显示和关闭逻辑进行了详细说明,以确保即使验证失败,对话框也不会自动消失,且解决了重复弹出的问题。
摘要由CSDN通过智能技术生成

上篇文章中提到,安全测试的一个需求是每次由后台切换到前台的时候都要走一遍登录界面,登录界面就是我的启动页,讲的是只要在配置文件中设置启动页activity的启动模式为singleTask就可以了,之后好像对这个效果不满意(是我解决的太快,感觉太简单了么??),所以给出了另外一种方案。

每次进到后台,从后台切换到前台的时候,只要不是在登录界面,就给弹一个dialog,提示用户输入密码验证身份,验证成功进入,点击取消的话进入到登录界面重新登录。

1、首先要解决的问题就是判断程序在前台还是在后台。

因为要监听所有的activity状态,所以判断应该写在BaseActivity中

/**

* 应用是否在前台运行

*

* @return true:在前台运行;false:已经被切到后台了

*/

private boolean isAppOnForeground() {

ActivityManager mActivityManager = (ActivityManager)this.getSystemService(Context.ACTIVITY_SERVICE);

List appProcesses = mActivityManager.getRunningAppProcesses();

if (appProcesses !=null) {

for (ActivityManager.RunningAppProcessInfo appProcess : appProcesses) {

if (appProcess.importance

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值