具体来说,我不想迁移到Android X。我只想使用一个名为Android Slices的功能。
https://developer.android.com/guide/slices/getting-started具体来说,我不想迁移到Android X。我只想使用一个名为Android Slices的功能。
https://developer.android.com/guide/slices/getting-started这是一个非常好的问题。你可以设置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。
是的,目前 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概述页面上阅读更多相关信息。
根据这篇文章,我猜测我们可以在不依赖于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/