详细地说,我不想迁移到 Android X。我只想使用一个称为 Android Slices 的功能。https://developer.android.com/guide/slices/getting-started
4 回答
这是一个很好的问题。您可以设置 gradle 以为此使用支持库而不是 AndroidX,但文档不存在。
implementation 'com.android.support:slices-builders:28.0.0-rc02'
implementation 'com.android.support:slices-core:28.0.0-rc02'
implementation 'com.android.support:slices-view:28.0.0-rc02'
这编译得很好,但我找不到一页文档。所有示例都使用 AndroidX 包中的 ListBuilder。
简短的回答,它的记录很糟糕。花了一整天的时间试图让它工作,我放弃了失望。
从你给出的文章中,
尽管并非总是需要,但 Android Studio 3.2 或更高版本包含可帮助您进行 Slice 开发的其他工具和功能,包括:
- AndroidX 重构工具:如果您在使用 AndroidX 库的项目中工作,则需要此工具。
- Slices lint 检查:在构建 Slices SliceProvider 时捕获常见的反实践
- 模板:在构建 SliceProvider 时处理样板文件
我认为您不需要AndroidX。
根据这篇文章,我猜我们可以在不依赖 android X 的情况下使用 Slices。
提供商和主机应用程序都需要:
有 compileSdkVersion 'android-P' 和 targetSdkVersion 'P' 依赖于 'com.android.support:slices-view:28.0.0-alpha1' 或 'com.android.support:slices-builders:28.0.0- alpha1',取决于他们的角色
https://blog.novoda.com/android-p-slices-missing-documentation-part-1/
是的,目前 Slices 在旧com.android.support
包中可用,您可以通过将这些依赖项添加到您的build.gradle
:
implementation 'com.android.support:slices-core:28.0.0-rc1'
implementation 'com.android.support:slices-builders:28.0.0-rc1'
(其中 rc1 是撰写本文时的最新版本)。
文档中也提到了这一点。
然而,像大多数遗留com.android.support
包一样,在未来的某个时候,遗留包中不会有新版本,com.android.support
未来的开发只会发生在androidx.*
. 您可以在AndroidX 概览页面上阅读更多相关信息。