4

我正在尝试根据此处给出的指南在 android 中实现 Slice 。然而,这里的实现只能通过 Slice Viewer 应用程序查看。当我运行它时,应用程序没有任何变化。我想我遗漏了一些必须添加到我希望查看切片的布局文件中的内容。但这只是一个猜测。

我也无法理解如何实现SliceViewApi来查看我的切片。

任何帮助,将不胜感激!

4

3 回答 3

2

在撰写本文时,根据文档,切片尚未显示在 Android 系统或 Google 应用程序的任何位置:

切片将很快开始向用户显示,但您可以立即开始构建。

正如您所指出的,渲染/显示切片的实际实现,称为SliceView,已经可用,但是还没有应用程序实际实现这一点(至少据我所知)。您可以自己实现它,但如果您只打算显示自己的切片(然后您可以只使用常规视图),则没有多大意义。SliceView如果您是一个启动器类型的应用程序并希望显示来自其他应用程序的切片,则您自己实现的主要用例是。

Slice Viewer 应用程序演示了一个实现,但它现在的SliceView主要目的是让您构建和测试您的切片,为其他应用程序实现做准备SliceView

在 Google I/O 2018 的Slices 会议上,宣布 Slices 展示的第一个系统区域将是 Google Search,以增强应用程序预测。在会议上,宣布这将在 2018 年的某个时间推出。

于 2018-06-07T11:04:18.760 回答
1

我在使用 Slices guide 和 SliceViewer 时也遇到了一些问题,最终在 SliceViewer 中发现了一些错误。我将这些固定在我制作的叉子中(https://github.com/roadmaptravel/android-SliceViewer)。如果您克隆/下载此 fork 并在 Android Studio 3.2 Canary 16 中运行它,则可以通过在 SliceViewer 中输入以下 URI 来添加演示切片:

Slice 指南中还不清楚的是,如果您想在 SliceViewer 中查看您自己的 Slice,您只能使用以下 3 种方案之一contenthttphttps. 例如:

<provider
    android:name=".provider.SampleSliceProvider"
    android:authorities="com.example.android.sliceviewer"
    android:exported="true">
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />

        <category android:name="android.app.slice.category.SLICE" />

        <data
            android:host="sliceviewer.android.example.com"
            android:pathPrefix="/"
            android:scheme="https" />
    </intent-filter>
</provider>

如果这对您有任何帮助,请告诉我,如果您对 Slices 有任何其他问题,请随时问他们。

更新: 我的更改已合并到原始 SliceViewer 存储库(https://github.com/googlesamples/android-SliceViewer)中,因此我建议(再次)使用该存储库。

于 2018-06-06T19:55:14.383 回答
0

可以使用 SliceView 小部件、SliceViewManager 和 SliceLiveData 创建切片查看器。

以下是创建基本切片查看器或切片演示器的步骤。

  • 首先将 SliceView 添加到布局。

  • 然后使用 SliceViewManager 和切片 uri 将切片绑定到 SliceView。

  • 要在切片查看器中显示切片更改,请使用 SliceLiveData 观察切片更改。

有关完整的 sliceview 示例,您可以查看http://www.zoftino.com/android-slices-with-examples

于 2018-10-12T02:31:47.340 回答