草庐IT

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

coder 2023-11-27 原文

我只是对 iOS 感到厌倦,最近我换到了 Android。我有一台 Nexus 5 设备,我刚刚在我的设备上安装完我最喜欢的应用程序。

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

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

我在 iPhone 上进行了相同的测试,结果......令人惊讶......iOS 正在启用密码屏幕后拍摄快照,因此任何人都看不到任何东西。似乎在 Android 中,快照是在启用密码屏幕之前拍摄的,因此任何人都可以看到最后一行屏幕的样子:)

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

  • 等待 LINE 的公司 NAVER 添加一个选项来阻止此应用显示在最近的应用列表中(在他们的 list 中添加 android:excludeFromRecents="true")[不会很快]
  • 等待 LINE 的公司 NAVER 在启用密码屏幕后强制快照[可能很快但不在公司的路线图中]
  • 自行反编译 apk 并更改 list - 或使用 FLAG_SECURE -(我试过了,但是当我启动新应用程序时,它突然在启动时死机,并显示一条消息“应用程序已停止”。我认为 LINE 的服务器在启动时会验证客户端app 是预期的,比较大小或其他东西)

所以我不知道有更多方法可以解决这个问题。你还有什么想法吗?我坚持下去。

非常感谢。

最佳答案

检测 LINE 何时离开前台
创建一个后台服务,检测 LINE 是否在前台以及何时离开前台。 ( https://stackoverflow.com/a/14044662/1683141 )

当行离开前景时,您应该采取行动:
A.完全停止line app
或者
B. 打开和“关闭”line 应用程序,使其在多任务缩略图中显示锁定状态

A possible way to accomplish situation B:

Optionally: detect which app the user has now opened and remember it

  1. Wait a few seconds and open the LINE app again after the user closed it (by intent for example)
  2. Now the LINE app will show the lock screen
  3. Now let the background service open the home screen (or make an intent to the remembered activity)
  4. Now the LINE app is back to the background and it will have a multitask-thumbnail showing the locked screen.

Ofcourse, this will create a loop, and this isn't a stable solution

-选项 A 是一种相对可靠的方法,并且(在我看来)是实现您想要的效果的好方法:没有人可以看到您的安全聊天。缺点是该应用程序现在已从多任务处理中移除。
-选项 B 只是一个想法,但如果以正确的方式完成,也许它会奏效。
编辑:选项 A 无效。如果任务被终止,应用程序不会从多任务处理中移除。

关于android - 阻止应用程序显示在 android kitkat 4.4.2 上的最近应用程序列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21184634/

有关android - 阻止应用程序显示在 android kitkat 4.4.2 上的最近应用程序列表中的更多相关文章

  1. ruby - 在 Ruby 程序执行时阻止 Windows 7 PC 进入休眠状态 - 2

    我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0

  2. ruby - 将差异补丁应用于字符串/文件 - 2

    对于具有离线功能的智能手机应用程序,我正在为Xml文件创建单向文本同步。我希望我的服务器将增量/差异(例如GNU差异补丁)发送到目标设备。这是计划:Time=0Server:hasversion_1ofXmlfile(~800kiB)Client:hasversion_1ofXmlfile(~800kiB)Time=1Server:hasversion_1andversion_2ofXmlfile(each~800kiB)computesdeltaoftheseversions(=patch)(~10kiB)sendspatchtoClient(~10kiBtransferred)Cl

  3. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  4. ruby - 在 Ruby 中编写命令行实用程序 - 2

    我想用ruby​​编写一个小的命令行实用程序并将其作为gem分发。我知道安装后,Guard、Sass和Thor等某些gem可以从命令行自行运行。为了让gem像二进制文件一样可用,我需要在我的gemspec中指定什么。 最佳答案 Gem::Specification.newdo|s|...s.executable='name_of_executable'...endhttp://docs.rubygems.org/read/chapter/20 关于ruby-在Ruby中编写命令行实用程序

  5. ruby - 为什么 4.1%2 使用 Ruby 返回 0.0999999999999996?但是 4.2%2==0.2 - 2

    为什么4.1%2返回0.0999999999999996?但是4.2%2==0.2。 最佳答案 参见此处:WhatEveryProgrammerShouldKnowAboutFloating-PointArithmetic实数是无限的。计算机使用的位数有限(今天是32位、64位)。因此计算机进行的浮点运算不能代表所有的实数。0.1是这些数字之一。请注意,这不是与Ruby相关的问题,而是与所有编程语言相关的问题,因为它来自计算机表示实数的方式。 关于ruby-为什么4.1%2使用Ruby返

  6. ruby-on-rails - Rails 应用程序之间的通信 - 2

    我构建了两个需要相互通信和发送文件的Rails应用程序。例如,一个Rails应用程序会发送请求以查看其他应用程序数据库中的表。然后另一个应用程序将呈现该表的json并将其发回。我还希望一个应用程序将存储在其公共(public)目录中的文本文件发送到另一个应用程序的公共(public)目录。我从来没有做过这样的事情,所以我什至不知道从哪里开始。任何帮助,将不胜感激。谢谢! 最佳答案 无论Rails是什么,几乎所有Web应用程序都有您的要求,大多数现代Web应用程序都需要相互通信。但是有一个小小的理解需要你坚持下去,网站不应直接访问彼此

  7. ruby - 无法运行 Rails 2.x 应用程序 - 2

    我尝试运行2.x应用程序。我使用rvm并为此应用程序设置其他版本的ruby​​:$rvmuseree-1.8.7-head我尝试运行服务器,然后出现很多错误:$script/serverNOTE:Gem.source_indexisdeprecated,useSpecification.Itwillberemovedonorafter2011-11-01.Gem.source_indexcalledfrom/Users/serg/rails_projects_terminal/work_proj/spohelp/config/../vendor/rails/railties/lib/r

  8. ruby-on-rails - Rails 应用程序中的 Rails : How are you using application_controller. rb 是新手吗? - 2

    刚入门rails,开始慢慢理解。有人可以解释或给我一些关于在application_controller中编码的好处或时间和原因的想法吗?有哪些用例。您如何为Rails应用程序使用应用程序Controller?我不想在那里放太多代码,因为据我了解,每个请求都会调用此Controller。这是真的? 最佳答案 ApplicationController实际上是您应用程序中的每个其他Controller都将从中继承的类(尽管这不是强制性的)。我同意不要用太多代码弄乱它并保持干净整洁的态度,尽管在某些情况下ApplicationContr

  9. ruby - RVM 使用列表[0] - 2

    是否有类似“RVMuse1”或“RVMuselist[0]”之类的内容而不是键入整个版本号。在任何时候,我们都会看到一个可能包含5个或更多ruby的列表,我们可以轻松地键入一个数字而不是X.X.X。这也有助于rvmgemset。 最佳答案 这在RVM2.0中是可能的=>https://docs.google.com/document/d/1xW9GeEpLOWPcddDg_hOPvK4oeLxJmU3Q5FiCNT7nTAc/edit?usp=sharing-知道链接的任何人都可以发表评论

  10. ruby-on-rails - date_field_tag,如何设置默认日期? [ rails 上的 ruby ] - 2

    我想设置一个默认日期,例如实际日期,我该如何设置?还有如何在组合框中设置默认值顺便问一下,date_field_tag和date_field之间有什么区别? 最佳答案 试试这个:将默认日期作为第二个参数传递。youcorrectlysetthedefaultvalueofcomboboxasshowninyourquestion. 关于ruby-on-rails-date_field_tag,如何设置默认日期?[rails上的ruby],我们在StackOverflow上找到一个类似的问

随机推荐