适用于 Surface Duo 的 Android 示例应用

许多 GitHub 存储库都提供可帮助你增强双屏和可折叠设备的应用的代码示例。 还有一个 Google Codelab 训练模块,用于了解如何使用窗口管理器

双屏体验示例

双屏体验示例是一个完整的示例 Android 应用程序,它展示了真实场景并演示了使用双屏/可折叠外形规格的不同方法。 可以克隆 GitHub 存储库,或从 Google Play 商店安装。

DualScreenCatalog

设计模式

演示所有双屏设计模式,并强调工具栏中当前显示的模式。

DualScreenOrderInk

双屏控件

包括 SDK 中的多个控件 - 可折叠导航组件、RecyclerView、BottomNavigationView、SnackbarContainer 和 Ink SDK。

DualScreenDevMode

开发人员模式

显示有关当前设计模式或双屏控件的详细信息,并通过名为“开发人员模式”的工具栏项轻松浏览应用程序代码。

SDK 示例

提供的一些 Kotlin 示例演示 Surface Duo 所有不同的设计模式和独特功能,例如扩展画布列表详细信息两页双视图伴生窗格以及如何访问铰链角度等。

下面突出显示了其中几个:

KotlinDragAndDrop

拖放

此示例包含拖放功能,这些功能可跨越单个页面或多个屏幕,具体取决于应用程序的布局。

KotlinPenEvents

笔事件

此示例演示如何在应用程序中使用笔事件和相应的数据。

KotlinIntentSecondScreen

意向第二屏幕

意向演示使用适用于 Android 的意向功能来生成辅助页面。

此外,还提供了 Java 版本的示例。

Jetpack 窗口管理器示例

查看 Jetpack 窗口管理器示例的完整列表。 下面是三个要点:

eBook Reader

电子书阅读器

使用 Jetpack 窗口管理器和 ViewPager2 实现的简单电子书阅读器。

Folding Video

折叠视频

使用 ExoPlayer 和 Jetpack 窗口管理器的视频播放器,根据设备的折叠功能类型和方向调整视图。

TwoDo

TwoDo

使用 Jetpack 窗口管理器和 SlidingPaneLayout 的待办事项列表应用程序,使用 Room 存储数据。

SurfaceDuoLayout 示例

这些完整的应用示例演示如何在实际用户交互中应用双屏设计模式。 这些示例专用于单屏设备和 Surface Duo。

TwoNote

TwoNote

包含笔记类别、拖放功能和墨迹支持的笔记应用程序。

PhotoEditor

照片编辑器

此应用程序实现了一个简单的照片编辑器,使用户可以选择、编辑和保存图像。

SourceEditor

源编辑器

该应用程序是一个 HTML 编辑器,可用于实时呈现格式化的源代码。