如何在android中为电子邮件创建应用程序锁定

时间:2013-10-01 10:13:00

标签: android

我在android中创建一个锁定应用程序,它获取安装在Android设备中的所有当前应用程序,并为用户创建一个选项,以锁定他想要锁定的任何应用程序。

当点击该应用程序时,锁定应用程序会在密码正确时请求解锁密码,它会打开该应用程序。

我这样做时遇到了这些问题:

1>如果输入的密码错误,那么应用程序不应该打开,或者根本不启动,我知道杀死其他应用程序基本上不可能,所以我可以做任何事情,如

A>应用程序根本不启动,或

B个如果这也是不可能的话,那我至少可以把它变成背景,

我无法执行任何这些程序

2 - ;如果我第一次锁定电子邮件并尝试打开电子邮件,电子邮件正在打开我的锁定活动,但随后电子邮件活动即将到达前台,使我的密码锁活动变为后台,但我的密码活动应该是要求输入密码并保持在前台,只输入密码或取消密码

如何处理这个问题??

编辑:我已经解决了上述问题,但在执行此操作时仍然遇到问题

activmanager.killBackgroundProcesses(pack);

我从正在后台运行的服务中获取程序包名称,以检查锁定的应用程序是否已启动

请帮助

感谢

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的解决方案,如果其他人需要这个答案,我会添加答案

1>我呼吁主屏幕,以便无论什么应用程序被调用到后台

进入主屏幕的代码:

Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(startMain);

现在我使用了

activmanager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
activmanager.killBackgroundProcesses(pack);

杀死进程,但仍然没有杀死目标包,而且

2 - ;我有一个服务正在检查启动了哪个应用程序,如果启动锁定的应用程序然后启动密码活动,所以我已经将这些标志添加到意图中,并且电子邮件应用程序没有像前面那样占据前景,我的密码活动仅在前台

in.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
in.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
in.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);