旧API将被弃用:谷歌敦促开发者迁移至Android Q的气泡弹窗
在 I/O 2019 开发者大会上,谷歌宣布了许多应用、服务和开发者工具更新,但 Android OS 依然是各界关注的焦点。目前 Android 已在全球超过 25 亿台设备上运行,并且占据了 I/O 会议的大部分时间。今年的大会上,谷歌依然为 Android Q 带来了许多变化。比如在首日的《What's New in Android》会议上,谷歌就宣布了一项重大的 API 更改。 (题图 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 商店应用会在安装时自动授权)。 庆幸的是,在 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 的准备了。 【编辑推荐】
点赞 0 (编辑:南平站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |