窗口管理器
最近更新时间 | 当前稳定版 | 下一候选版本 | Beta 版 | Alpha 版 |
---|---|---|---|---|
2021 年 3 月 24 日 | - | - | - | 1.0.0-alpha05 |
声明依赖项
如需添加 Window Manager 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请阅读 Google 的 Maven 代码库。
在应用或模块的 build.gradle
文件中添加所需工件的依赖项:
dependencies { implementation "androidx.window:window:1.0.0-alpha03" }
反馈
您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对库的改进有某些建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。
如需了解详情,请参阅问题跟踪器文档。
版本 1.0.0
版本 1.0.0-alpha05
2021 年 3 月 24 日
发布了 androidx.window:window:1.0.0-alpha05
。版本 1.0.0-alpha05 中包含这些提交内容。
新功能
我们为 FoldingFeature 添加了一些便捷方法,以便应用能够判断相应功能是否处于分离状态、遮蔽状态,以及确定合页的朝向。我们还将隐藏合页类型,以便
我们从 WindowManager 中移除同步读取方法。因存在隐式竞态条件,同步读取方法容易出错。注册监听器和回调,以在 WindowLayoutInfo 上接收更新。
API 变更
版本 1.0.0-alpha04
2021 年 3 月 10 日
发布了 androidx.window:window:1.0.0-alpha04
。版本 1.0.0-alpha04 中包含这些提交内容。
新功能
- 修复了在没有 OEM 实现的情况下不发出 WindowLayoutInfo 的错误。现在我们会发出一个空的 WIndodoLayoutInfo。
- 修复了因铰链状态在应用处于后台运行时发生更改而导致系统无法正确更新状态的错误。现在状态将会保持一致。
- 更新了 proguard 文件,以忽略运行时依赖项发出的警告。
问题修复
- 当缺少 OEM 库时,发出一个空值。(Ide935)
版本 1.0.0-alpha03
2021 年 2 月 18 日
发布了 androidx.window:window:1.0.0-alpha03
。版本 1.0.0-alpha03 中包含这些提交内容。
新功能
- 当 OEM 实现为空时,针对 WindowLayoutInfo 发出一个空值。这样可以更轻松地在更多设备上使用此库。由于这些 API 是异步的,因此我们仍建议应用编写一些防御性代码,并在超时后发出默认值。我们对 OEM 实现不作任何保证,并且初始值也可能会出现延迟。
问题修复
- 当缺少 OEM 库时,发出一个空值。(Ide935)
版本 1.0.0-alpha02
2021 年 1 月 27 日
发布了 androidx.window:window:1.0.0-alpha02
。版本 1.0.0-alpha02 中包含这些提交内容。
新功能
我们弃用了一些 API,以帮助简化 API 并减少错误。一些值得注意的示例包括从 WindowManager 中移除同步读取操作,以及弃用 DeviceState。同步读取操作可能会导致出现竞态条件并且界面错误。
我们已将 DisplayFeature 转换为一个今后将实现其他功能的接口。我们的第一个功能是 FoldingFeature,现在是屏幕折叠或合页的表示形式。该部分还包含取代 DeviceState 的合页的状态。
Android 11 中引入了 WindowMetrics,可让开发者轻松查询与窗口相关的指标,例如,窗口的位置和大小,以及任何系统边衬区。我们在此版本中向后移植了 API,以便开发者能够利用 WindowMetrics,并继续支持旧版 Android。可以通过
WindowManager#getCurrentWindowMetrics()
和 WindowManager#getMaximumWindowMetrics() API 获取 WindowMetrics。
API 变更
- 弃用将在下一个 Alpha 版中移除的 API (Ib7cc4)
- 更新
ExtensionInterface
以接受显式 Activity 引用。(I07ded) - 引入 WindowMetrics API。(I3ccee)
- 从 WindowManager 中移除同步读取方法 (I69983)
- 保护 ExtensionWindowBackend 软件包。(Ied208)
问题修复
- 更新
ExtensionInterface
API 以接受视觉上下文。(I8e827)
外部贡献
- 合并 DeviceState 和 WindowLayoutInfo,以便更轻松地访问数据。(Id34f4)
版本 1.0.0-alpha01
2020 年 2 月 27 日
发布了 androidx.window:window:1.0.0-alpha01
和 androidx.window:window-extensions:1.0.0-alpha01
。版本 1.0.0-alpha01 中包含这些提交内容
这是 Window Manager 库的第一个版本。
新功能
DisplayFeature
:这一新的 API 可识别一整块屏幕平面上的中断处,如合页或折叠线DeviceState
:这一新的 API 可根据定义的折叠状态(例如CLOSED
、OPENED
、HALF_OPENED
等)列表,提供手机当前的折叠状态