阻止应用程序显示在android kitkat 4.4.2的最新应用程序列表中

阻止应用程序显示在android kitkat 4.4.2的最新应用程序列表中,android,list,line,Android,List,Line,我只是厌倦了iOS,最近换了安卓。我有一台Nexus5设备,我刚刚在设备上安装完我最喜欢的应用程序 其中一个应用程序是Line,naver著名的通信应用程序。我安装了它,并用密码对它进行了配置,以确保对它的访问安全,因此,除了我之外,没有人能看到里面的“机密”对话 问题是,即使我在线上启用了密码,如果有人按下“最近的列表应用程序”按钮,他们也可以完美地看到我上一次对话的屏幕截图,这样任何人都可以看到我在线上所做的事情 我在iPhone和..上做了同样的测试。。惊喜iOS在启用密码屏幕后拍摄快照,

我只是厌倦了iOS,最近换了安卓。我有一台Nexus5设备,我刚刚在设备上安装完我最喜欢的应用程序

其中一个应用程序是Line,naver著名的通信应用程序。我安装了它,并用密码对它进行了配置,以确保对它的访问安全,因此,除了我之外,没有人能看到里面的“机密”对话

问题是,即使我在线上启用了密码,如果有人按下“最近的列表应用程序”按钮,他们也可以完美地看到我上一次对话的屏幕截图,这样任何人都可以看到我在线上所做的事情

我在iPhone和..上做了同样的测试。。惊喜iOS在启用密码屏幕后拍摄快照,因此任何人都看不到任何内容。在Android中,快照似乎是在启用密码屏幕之前拍摄的,因此任何人都可以看到最后一行屏幕的样子:)

所以,在阅读了论坛上的其他帖子后,我想有几种方法来解决这个问题:

  • 等待LINE的公司导航器添加一个选项,以防止此应用程序显示在最近的应用程序列表上(在其清单上添加android:excludeFromRecents=“true”)[这不会很快发生]
  • 等待LINE的公司导航器在密码屏幕启用后强制快照[可能很快,但不在公司的路线图中]
  • 我自己反编译apk和更改清单-或使用FLAG_SECURE-(我尝试过,但当我启动新应用程序时,它在启动时突然死亡,并显示一条消息“应用程序已停止”。我启动时,thing LINE的服务器验证客户端应用程序是否符合预期,比较大小或其他内容)
所以我不知道更多的方法来解决这个问题。你还有什么想法吗?我被绊倒了


非常感谢。

检测线路何时离开前台
创建一个后台服务,检测线路是否在前台以及何时离开前台。()

当线条离开前景时,您应该采取措施:
A.完全停止在线应用程序

B.打开并“关闭”行应用程序,以便在多任务缩略图中显示锁定状态

实现情况B的一种可能方法:

可选:检测用户现在打开的应用程序并记住它

  • 等待几秒钟,在用户关闭LINE应用程序后再次打开它(例如,通过意图)
  • 现在,LINE应用程序将显示锁定屏幕
  • 现在让后台服务打开主屏幕(或对记忆中的活动做出意图)
  • 现在LINE应用程序回到了后台,它将有一个显示锁定屏幕的多任务缩略图
  • 当然,这将创建一个循环,这不是一个稳定的解决方案

    -选项A是一个相对可靠的,并且(在我看来)是一个很好的方式来实现你想要的:没有人能看到你的安全聊天。缺点是该应用程序现在已从多任务处理中删除。
    -选项B只是一个想法,但如果方法正确,可能会奏效。

    编辑:选项A不起作用。如果任务被终止,应用程序将不会从多任务处理中删除。

    谢谢mdlc!我将尝试选项a。我还不习惯android服务开发,所以我认为测试需要一段时间,但一旦我得到结果,我会分享它们。谢谢mdlc,我不确定方案A是否可行。我担心,即使应用程序被关闭或关闭,最近的列表也会显示这一行。事实上,无论应用程序是否关闭,保持在线状态是有意义的,因为事实上是这样。您确定选项A可行吗?您可以通过下载一些任务管理器应用程序(或应用程序杀手等)来测试它是否有效,并查看是否有应用程序清空了最近的应用程序列表。已测试的应用程序不会从最近的应用程序列表中清空它。所以它应该是选项B或反编译行应用程序,以便修改清单。。(已经尝试过了,但由于任何原因,当我尝试执行重新编译的行版本时,应用程序在启动时突然停止)。Mdlc,我最终成功地对行进行了反编译,以在清单文件上添加一些配置。现在,该行不会在最近的列表中显示更多内容。非常感谢。