旧API将被弃用:谷歌敦促开发者迁移至Android Q的气泡弹窗 - Go语言中文社区

旧API将被弃用:谷歌敦促开发者迁移至Android Q的气泡弹窗


在 I/O 2019 开发者大会上,谷歌宣布了许多应用、服务和开发者工具更新,但 Android OS 依然是各界关注的焦点。目前 Android 已在全球超过 25 亿台设备上运行,并且占据了 I/O 会议的大部分时间。今年的大会上,谷歌依然为 Android Q 带来了许多变化。比如在首日的《What's New in Android》会议上,谷歌就宣布了一项重大的 API 更改。

Bubble 1.jpg

(题图 via XDA-Developers)

据悉,SYSTEM_ALERT_WINDOW 是一个允许开发者在屏幕顶上绘制叠加层的全局弹窗 API,比如大家最熟悉的聊天气泡(参考 Facebook Messenger)。

不过现在,Google 已决定在 Android Q 中,用 Bubbles API 来替代 SYSTEM_ALERT_WINDOW 。而且在未来的 Android 版本中,谷歌还将彻底弃用旧 API 。

需要指出的是,尽管 SYSTEM_ALERT_WINDOW 可以方便开发者在其它 App 窗口上叠加气泡窗口,但它也会带来明显的安全隐患,比如臭名昭著的“Cloak and Dagger”漏洞利用。

作为应对,谷歌开始对 Android Oreo 中回退区域的层叠加以限制,且在 Android Q(Go)版本中完全移除了对该 API 的访问。

对于用户来说,应该尽量通过手动管理,对应用授予特殊的屏幕操作权限(Google Play 商店应用会在安装时自动授权)。

Bubble 2.jpg

庆幸的是,在 Android Q 中,应用只拥有对 SYSTEM_ALERT_WINDOW 的临时访问权限。

通过侧载(Sideload)方式安装的应用,只能获得 30 秒的访问权限。而通过 Play 商店安装的应用,则能够在重启前保持这项访问权限。

在未来的 Android 版本中,SYSTEM_ALERT_WINDOW 将被完全弃用。所有使用该 API 的 Android 应用,都必须转至 Android Q beta 2 中引入的全新气泡 API 。

不过,气泡(Bubbles)属于通知(Notification)API 的一部分,因此无法作为 SYSTEM_ALERT_WINDOW 的完全替代品。

虽然气泡能够以微小、可调整大小的形式出现,但它们必须满足一个或多个的条件,才能被通知 API 给调用。

至于彻底弃用 SYSTEM_ALERT_WINDOW API 的时间,谷歌尚未给出确切的时间表。但是对于开发者来说,现在也是时候做好迁移至 Bubbles API 的准备了。

版权声明:本文来源51CTO,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:http://news.51cto.com/art/201905/596181.htm
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-05-16 03:52:00
  • 阅读 ( 847 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢