似乎当前从Android L中排除最近应用程序列表中的应用程序的方法已被破坏.我们的应用程序使用android:excludeFromRecents,它的工作正常.除非我们的应用程序是设备重新启动时启动的第一个应用程序.
这就是当我们的应用程序作为设备上的第一个应用程序退出时的外观:

如果我们首先启动相机(或任何其他应用程序),然后我们的应用程序并退出两者,它的外观如下:

简单地说:如果一个带有android:excludeFromRecents的应用程序作为设备上的第一个应用程序启动,则指令android:excludeFromRecents不起作用.如果在android:excludeFromRecents-app之前启动了另一个应用程序,它会按预期工作.
这是一个非常奇怪的边缘案例错误还是我错过了一些非常明显的东西?
我们构建了一个非常隐私谨慎的Web浏览器(http://inbrowserapp.com),因此一旦应用程序关闭,我们就无法显示应用程序中显示的任何屏幕截图.但这也应该影响银行应用程序,密码管理器等,因为如果应用程序是重新启动后第一个启动的应用程序,敏感信息将被截屏.
当用户退出Android L时,也许我们可以使用空白视图来查看路径并隐藏敏感信息.但是看起来这里有什么问题?
我很高兴地说这个问题在 Android 5.1 中已得到修复。刚刚在运行 5.1 的设备上确认了这一点。
因此,无论如何,对我们来说,正确的解决方案是使用 getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); 拒绝屏幕截图。对于 SDK 版本 21 的 Lollipop,任何低于或高于该值的值都应该没问题。
| 归档时间: |
|
| 查看次数: |
1227 次 |
| 最近记录: |