自定义在应用程序屏幕之间切换时可见的 Android 应用程序屏幕图像

Posted

技术标签:

【中文标题】自定义在应用程序屏幕之间切换时可见的 Android 应用程序屏幕图像【英文标题】:Customize Android App Screen Image which is visible in switch between Apps screen 【发布时间】:2015-02-17 20:34:53 【问题描述】:

我想知道当我的应用程序处于后台模式时,如何将“我的应用程序的图像”自定义为主屏幕图像,即当用户在“最近应用程序中的应用程序”选项之间导航时,所有正在运行的应用程序的小屏幕截图都可见。

例如:为更清晰而附加的图像。

【问题讨论】:

【参考方案1】:

查看以下问题:

Is there a way to change the thumbnail of an app in the android task switcher (long press on home button) How to force app to create thumbnail (snapshot) for recent apps list? How do I prevent Android taking a screenshot when my app goes to the background?

所以理论上有两种可能的解决方案:

    覆盖 Activity.onCreateThumbnail() 以自定义缩略图。 将FLAG_SECURE 添加到窗口以防止出现缩略图(和屏幕截图)。

Activity.onCreateThumbnail() 听起来很棒,直到您意识到它自 Android 4.0.3 以来在方法调用被注释掉时已被破坏。看上面的帖子或者直接看Android source code:

// First create a thumbnail for the activity...
// For now, don't create the thumbnail here; we are
// doing that by doing a screen snapshot.
info.thumbnail = null; //createThumbnailBitmap(r);

目前,自定义缩略图没有简单的方法。

所以真的只剩下FLAG_SECURE。这不允许您自定义缩略图,而是阻止它,例如密码表格和敏感信息。使用标志有一个缺点 - 它还会阻止屏幕截图、屏幕捕获和镜像显示。

【讨论】:

onCreateThumbnail 实际上永远不会被调用!

以上是关于自定义在应用程序屏幕之间切换时可见的 Android 应用程序屏幕图像的主要内容,如果未能解决你的问题,请参考以下文章

如何使自定义 GUI 控件对屏幕阅读器可见?

UITableView 在点击屏幕之前不可见

定义一个可以在运行时在视图之间切换的故事板

自定义工具栏在片段中不可见

如何在可见的两个视图之间切换?

在单独的 .kv (Kivy) 文件中定义的屏幕之间切换