核心
androidx.core.animation
androidx.core.app
androidx.core.content
androidx.core.role
androidx.core.view
(查看所有核心软件包的参考文档)
此表列出了 androidx.core
组中的所有工件。
工件 | 稳定版 | 发布候选版 | Beta 版 | Alpha 版 |
---|---|---|---|---|
核心 | 1.16.0 | - | - | - |
核心动画 | 1.0.0 | - | - | - |
核心-google-shortcuts | 1.1.0 | - | - | 1.2.0-alpha01 |
核心-性能 | 1.0.0 | - | - | - |
核心-remoteviews | 1.1.0 | - | - | - |
核心-角色 | 1.1.0 | - | - | - |
核心-启动屏幕 | 1.0.1 | 1.1.0-rc01 | 1.2.0-beta02 | - |
声明依赖项
要添加对 Core 的依赖项,您必须将 Google Maven 存储库添加到您的项目。如需了解更多信息,请阅读Google 的 Maven 存储库。
在您的应用或模块的 build.gradle
文件中添加您所需工件的依赖项
Groovy
dependencies { def core_version = "1.16.0" // Java language implementation implementation "androidx.core:core:$core_version" // Kotlin implementation "androidx.core:core-ktx:$core_version" // To use RoleManagerCompat implementation "androidx.core:core-role:1.1.0" // To use the Animator APIs implementation "androidx.core:core-animation:1.0.0" // To test the Animator APIs androidTestImplementation "androidx.core:core-animation-testing:1.0.0" // Optional - To enable APIs that query the performance characteristics of GMS devices. implementation "androidx.core:core-performance:1.0.0" // Optional - to use ShortcutManagerCompat to donate shortcuts to be used by Google implementation "androidx.core:core-google-shortcuts:1.1.0" // Optional - to support backwards compatibility of RemoteViews implementation "androidx.core:core-remoteviews:1.1.0" // Optional - APIs for SplashScreen, including compatibility helpers on devices prior Android 12 implementation "androidx.core:core-splashscreen:1.2.0-beta02" }
Kotlin
dependencies { val core_version = "1.16.0" // Java language implementation implementation("androidx.core:core:$core_version") // Kotlin implementation("androidx.core:core-ktx:$core_version") // To use RoleManagerCompat implementation("androidx.core:core-role:1.1.0") // To use the Animator APIs implementation("androidx.core:core-animation:1.0.0") // To test the Animator APIs androidTestImplementation("androidx.core:core-animation-testing:1.0.0") // Optional - To enable APIs that query the performance characteristics of GMS devices. implementation("androidx.core:core-performance:1.0.0") // Optional - to use ShortcutManagerCompat to donate shortcuts to be used by Google implementation("androidx.core:core-google-shortcuts:1.1.0") // Optional - to support backwards compatibility of RemoteViews implementation("androidx.core:core-remoteviews:1.1.0") // Optional - APIs for SplashScreen, including compatibility helpers on devices prior Android 12 implementation("androidx.core:core-splashscreen:1.2.0-beta02") }
有关依赖项的更多信息,请参阅添加构建依赖项。
反馈
您的反馈有助于改进 Jetpack。如果您发现新问题或有改进此库的想法,请告诉我们。在创建新问题之前,请先查看此库中现有问题。您可以通过点击星形按钮为您已有的问题投票。
如需了解更多信息,请参阅问题跟踪器文档。
Core-Viewtree 1.0 版
1.0.0 版
2025 年 2 月 26 日
androidx.core:core-viewtree:1.0.0
已晋升为首个稳定版,自上一个 RC 版以来没有变化。
此库引入了 View 可以拥有不连续父级的概念。View 的不连续父级是独立的 View
对象,它充当 View 的父级,但不是通过 View.parent
属性设置的。具有不连续父级的 View 示例包括 ViewOverlays
、弹出窗口和对话框,它们都出现在主视图层次结构之外。View 只有在没有通过平台的 View.parent
属性设置直接父级时,才能拥有不连续父级。目前,androidx 仅为由 Transition 1.6.0-alpha01
及更高版本创建的 ViewOverlays
设置不连续父级。您还可以为视图指定自己的不连续父级。如需了解更多信息,请参阅文档。
1.0.0-rc01 版
2025 年 2 月 12 日
androidx.core:core-viewtree:1.0.0-rc01
发布,自 beta 版以来没有变化。
1.0.0-beta01 版
2025 年 1 月 29 日
androidx.core:core-viewtree:1.0.0-beta01
发布,自 alpha 版以来没有变化。1.0.0-beta01 版包含这些提交。
1.0.0-alpha01 版
2024 年 12 月 11 日
androidx.core:core-viewtree:1.0.0-alpha01
发布。1.0.0-alpha01 版包含这些提交。
新功能
首次发布
core-viewtree
,由 androidx core 传递公开。此初始版本引入了 View 可以拥有不连续父级的概念。View 的不连续父级是独立的
View
对象,它充当 View 的父级,但不是通过View.parent
属性设置的。具有不连续父级的 View 示例包括ViewOverlays
、弹出窗口和对话框,它们都出现在主视图层次结构之外。View 只有在没有通过平台的View.parent
属性设置直接父级时,才能拥有不连续父级。目前,androidx 仅为由 transition 创建的ViewOverlays
设置不连续父级。您还可以为视图指定自己的不连续父级。如需了解更多信息,请参阅文档。
API 更改
- 添加了
ViewParent.getParentOrViewTreeDisjointParent()
和ViewParent.setViewTreeDisjointParent(View, ViewParent?)
方法 (Ib2950)
Core-i18n 1.0 版
1.0.0 版
2025 年 4 月 9 日
androidx.core:core-i18n:1.0.0
发布。
该组件使创建正确国际化的应用程序变得更容易,主要关注两个方面
- 日期和时间格式化功能遵循最佳当前实践,尊重用户自定义设置,并提供统一的 API,可在旧的和新的 Android 版本上正常工作。
- 适用于旧 API 的
android.icu.text.MessageFormat
后向移植版本。但在新的 Android 版本上仍然有用,因为它集成了上述日期/时间格式化。这会尊重用户设置,而android.icu.text.MessageFormat
不会这样做。
该组件将成为向后移植新 i18n API、添加新 i18n 功能或修复以及总的来说使国际化更容易的载体。
1.0.0-rc01 版
2025 年 3 月 26 日
androidx.core:core-i18n:1.0.0-rc01
发布,自上一个 beta 版以来没有显著变化。1.0.0-rc01 版包含这些提交。
1.0.0-beta01 版
2025 年 3 月 12 日
androidx.core:core-i18n:1.0.0-beta01
发布。1.0.0-beta01 版包含这些提交。
新功能
- 这是
core-i18n
组件的首次发布。该组件使创建正确国际化的应用程序变得更容易,主要关注两个方面- 日期和时间格式化功能遵循最佳当前实践,尊重用户自定义设置,并提供统一的 API,可在旧的和新的 Android 版本上正常工作。
- 适用于旧 API 的
android.icu.text.MessageFormat
后向移植版本。但在新的 Android 版本上仍然有用,因为它集成了上述日期/时间格式化。这会尊重用户设置,而android.icu.text.MessageFormat
不会这样做。 - 该组件将成为向后移植新 i18n API、添加新 i18n 功能或修复以及总的来说使国际化更容易的载体。
1.0.0-alpha01 版
2023 年 7 月 26 日
androidx.core:core-i18n:1.0.0-alpha01
发布。1.0.0-alpha01 版包含这些提交。
Core-location-altitude 1.0 版
1.0.0-alpha03 版
2024 年 10 月 16 日
androidx.core:core-location-altitude:1.0.0-alpha03
、androidx.core:core-location-altitude-external-protobuf:1.0.0-alpha03
和 androidx.core:core-location-altitude-proto:1.0.0-alpha03
发布。1.0.0-alpha03 版包含这些提交。
安全修复
- 截至此更改,androidx 已针对 protobuf 4.28.2 进行编译,以解决 CVE-2024-7254。将您对
androidx.core:core-location-altitude-proto
和androidx.core:core-location-altitude-external-protobuf
的依赖项升级到 1.1.0-alpha03,以解决漏洞风险。
Bug 修复
- 删除了对新平台 API 的手动概述访问,因为在使用带有 AGP 7.3 或更高版本(例如 R8 版本 3.3)的 R8 时,以及在使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)的所有构建中,这会自动通过 API 建模发生。不使用 AGP 的客户端建议更新到 D8 版本 8.1 或更高版本。有关更多详细信息,请参阅本文。( Ieb9ae,b/345472586)
1.0.0-alpha02 版
2024 年 6 月 12 日
androidx.core:core-location-altitude:1.0.0-alpha02
、androidx.core:core-location-altitude-external-protobuf:1.0.0-alpha02
和 androidx.core:core-location-altitude-proto:1.0.0-alpha02
发布。1.0.0-alpha02 版包含这些提交。
Bug 修复
- 修复了由 proto 库重打包导致的 proguard 故障。
外部贡献
- 上述 bug 修复由 andrekir@pm.me 提供
1.0.0-alpha01 版
2023 年 7 月 26 日
androidx.core:core-i18n:1.0.0-alpha01
和 androidx.core:core-location-altitude:1.0.0-alpha01
发布。1.0.0-alpha01 版包含这些提交。
新功能
- 添加了
AltitudeConverterCompat
类,其中包含一个静态方法addMslAltitudeToLocation(Context, Location)
(I11168)。
Core-telecom 1.0 版
1.0.0 版
2025 年 5 月 7 日
androidx.core:core-telecom:1.0.0
发布。1.0.0 版包含这些提交。
1.0.0 的主要功能
- 核心电信 API 的初始稳定版,重点关注
CallsManager
API 表面,用于将 VoIP 呼叫集成到 Android 平台。
1.0.0-rc01 版
2025 年 4 月 9 日
androidx.core:core-telecom:1.0.0-rc01
发布。1.0.0-rc01 版包含这些提交。
新功能
新的实验性 API 呼叫扩展。此版本中添加的新实验性扩展是
- 支持会议摘要远程扩展,允许远程界面从连接的 VoIP 应用程序接收会议摘要信息(当前发言人和参与者数量)。(7cf095f)
- 支持呼叫图标扩展,允许 VoIP 应用程序向远程
InCallService
(自动、表盘等)发送图标 URI。图标可以在整个通话过程中更新,并且可以具有相同的 URI 值。( 8e1813e)
1.0.0-beta01 版
2024 年 12 月 11 日
androidx.core:core-telecom:1.0.0-beta01
发布。1.0.0-beta01 版包含这些提交。
新功能
以下新功能的 Beta 版发布
- 在添加呼叫之前获取可用音频端点。应用开发者现在可以在发起呼叫之前显示所有可用的端点,这允许用户无缝选择他们首选的音频端点并优化他们的设置。这消除了在呼叫开始时进行呼叫中调整的需要,提供了更流畅的体验。
- VOIP 应用程序呼叫扩展的实验性 API 支持。呼叫扩展允许应用程序提供有关正在进行的呼叫的更多详细信息,例如群组呼叫或会议中的参与者列表。支持的远程界面(例如 Android Auto)可以向用户显示此信息,并允许他们与支持的扩展进行交互。此版本中添加的新实验性扩展是
- 支持显示群组呼叫或会议中的参与者,并描述哪个参与者处于活动状态。支持对参与者执行以下可选操作
- 举手和放下参与者的手。
- 踢出参与者。
- 支持呼叫静音,允许远程界面静音 VOIP 呼叫,而无需同时全局静音麦克风。
- 支持显示群组呼叫或会议中的参与者,并描述哪个参与者处于活动状态。支持对参与者执行以下可选操作
API 更改
- 将
addLocalSilenceExtension
重命名为addLocalCallsilenceExtension
(If4a9c) - 将
preferredStartingCallEndpoint
从var
更改为val
。( Iab6b7) - 添加本地呼叫静音 API (I29dd0)
- 为
CallEndpointCompat
类实现compareTo
函数 (Ia06b7) - 添加实验性应用操作 API。( Ifb796)
- 添加新的
CallsManager
APIgetAvailableStartingCallEndpoints
(Ia8bcf) - 更新
ExperimentalAppActions
注释以确保其准确跟踪实验功能的所有用法。( Id5ea5)
Bug 修复
- 添加 Android API 级别 28 到 33 的全局静音状态接收器。( I75e66)
- 修复了只有最近连接的
InCallService
才能发送操作事件的问题 (I39599) - 为 voip 应用操作实现 ICS 扩展 API。( I1274c)
- 在 API 级别 34 之前拒绝呼叫现在将正确销毁 Telecom 中的呼叫。( I635b7)
addCall
现在通过 API 而不是父协程正确抛出异常 (I83334)- 在附加包中添加占位符值 (Iebf7f)
- 删除了对新平台 API 的手动概述访问,因为在使用带有 AGP 7.3 或更高版本(例如 R8 版本 3.3)的 R8 时,以及在使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)的所有构建中,这会自动通过 API 建模发生。不使用 AGP 的客户端建议更新到 D8 版本 8.1 或更高版本。有关更多详细信息,请参阅本文。( Ieb9ae,b/345472586)
- 添加了对
CallsManager#addCall
扩展的实验性支持。( I24d92) - 如果平台因异常、达到最大呼叫数等原因而未能添加呼叫,Core-Telecom 现在将抛出
CallException
。( I41f27)
1.0.0-alpha03 版
2024 年 4 月 17 日
androidx.core:core-telecom:1.0.0-alpha03
发布。1.0.0-alpha03 版包含这些提交。
Bug 修复
- 重构了
JetpackConnectionService
,以纠正在 SDK 33 及以下版本中地址为空时发生的问题。重构后的JetpackConnectionService
也能够应对来自电信平台 API 的意外 NULL 值。 - 改进了
addCall/CallControlScope
API 文档。 - 测试可靠性改进。
1.0.0-alpha02 版
2023 年 10 月 4 日
androidx.core:core-telecom:1.0.0-alpha02
发布。1.0.0-alpha02 版包含这些提交。
API 更改
- 修改了返回布尔值以指示成功/失败的方法的 API 签名,改为返回一个明确指示操作成功或失败原因的结果类。
- 将
CallControlCallback
方法作为 lambda 参数移动到addCall
,以消除在调用作用域中显式提供回调的需要。
Bug 修复
- 修复了
ConnectionService
兼容层中的一个错误,该错误在针对 pre-U SDK 运行时会导致没有呼叫音频。 - 改进 API 文档。
1.0.0-alpha01 版
2023 年 5 月 10 日
androidx.core:core-telecom:1.0.0-alpha01
发布。此版本在内部分支中开发,应与 Android 14 Beta 2 一起使用。
新功能
引入
CallsManager
API,VoIP 应用程序可以使用它与设备上的电信框架集成。通知给平台的呼叫受益于前台执行优先级、在蓝牙、可穿戴设备和车载设备上的可见性以及简化的音频路由。对于运行旧版本 Android 的设备,
CallsManager
API 封装了旧版ConnectionService
API。
核心和核心-ktx 1.16 版
1.16.0 版
2025 年 4 月 9 日
androidx.core:core:1.16.0
、androidx.core:core-ktx:1.16.0
和 androidx.core:core-testing:1.16.0
发布。1.16.0 版包含这些提交。
自 1.15.0 以来的重要变化 - 此库现在使用 JSpecify nullness 注解,它们是类型使用。Kotlin 开发者应使用以下编译器参数来强制执行正确使用:-Xjspecify-annotations=strict
(这是 Kotlin 编译器 2.1.0 版开始的默认设置)。( Iaf3e1,b/326456246)
1.16.0-rc01 版
2025 年 3 月 26 日
androidx.core:core:1.16.0-rc01
、androidx.core:core-ktx:1.16.0-rc01
和 androidx.core:core-testing:1.16.0-rc01
发布,与之前的 beta 版没有更改。
1.16.0-beta01 版
2025 年 3 月 12 日
androidx.core:core:1.16.0-beta01
、androidx.core:core-ktx:1.16.0-beta01
和 androidx.core:core-testing:1.16.0-beta01
发布。1.16.0-beta01 版包含这些提交。
API 更改
- 改进内嵌保护 API (I7050d)
- 添加新键以在非放大窗口坐标中获取字符边界。( If7a06)
- 添加新的布尔属性以表示
AccesibilityNodeInfo
是否表示必填字段。( I4fd2d) - 将
View.transformMatrixToGlobal
反向移植到ViewCompat
(If17e2)
1.16.0-alpha02 版
2025 年 1 月 29 日
androidx.core:core:1.16.0-alpha02
、androidx.core:core-ktx:1.16.0-alpha02
和 androidx.core:core-testing:1.16.0-alpha02
发布。1.16.0-alpha02 版包含这些提交。
API 更改
- 添加
BuildCompat.isAtLeastB
用于检查 Baklava 中添加的 API 是否可用 (I0f89c) - 添加一个实验性 API 以获取内置显示器的列表。( Idda4d)
- 添加一组与确保系统栏对比度相关的 API (I9849c)
Bug 修复
- 修复了在 SDK < 26 上
getLaunchDisplayId()
返回不正确默认值 0 的问题。( Icd679) - 此库现在使用 JSpecify nullness 注解,它们是类型使用。Kotlin 开发者应使用以下编译器参数来强制执行正确使用:
-Xjspecify-annotations=strict
(这是 Kotlin 编译器 2.1.0 版开始的默认设置)。( Iaf3e1,b/326456246)
1.16.0-alpha01 版
2024 年 12 月 11 日
androidx.core:core:1.16.0-alpha01
、androidx.core:core-ktx:1.16.0-alpha01
和 androidx.core:core-testing:1.16.0-alpha01
发布。1.16.0-alpha01 版包含这些提交。
API 更改
- 为
ActivityOptionsCompat
添加了setLaunchDisplayId
。( I39e77,b/379669743) - 添加了
SYSTEM_OVERLAYS
的 compat API。( Ibd1fd,b/287470173) - 添加了
OutcomeReceiverCompat
,一个在所有 API 级别上都可用的 AndroidOutcomeReceiver
版本。( Ib8265,b/380060342) - 添加了
android.view.ScrollFeedbackProvider
的 compat 类。( Icaa92) - 添加了
ViewCompat.addViewOverlay(View)
作为View.getOverlay().add(View)
的替代方法。ViewCompat
变体修复了在被覆盖视图和覆盖所有者之间无法解析LifecycleOwner
和ViewModelStoreOwner
等所有者的问题。( I81413) - 引入了 View 可以拥有不连续父级的概念。视图的不连续父级是一个不同的视图,它有效地充当了其他视图的父级,但不是通过
View.parent
属性设置的。有关更多信息,请参阅文档。( Ib2950) - 添加了一个新的 API
ViewGroupCompat#installCompatInsetsDispatch
,供开发者修复 API 30 之前存在的内嵌分发问题。( I11159) - 为
Typeface
样式添加了FontsContractCompat.TypefaceStyle
IntDef 以在FontsContractCompat
中进行注释。( Ib3e5b)
外部贡献
- 已弃用
BuildCompat.isAtLeastV
。调用者应直接检查SDK_INT
是否大于等于 35。感谢 Jake Wharton!( I294d1) - 为
TaskStackBuilder
添加了一个可变性标志。感谢 Kamal Faraj!( Ife0ec,b/371534781)
核心和核心-ktx 1.15 版
1.15.0 版
2024 年 10 月 30 日
androidx.core:core:1.15.0
、androidx.core:core-ktx:1.15.0
和 androidx.core:core-testing:1.15.0
发布。1.15.0 版包含这些提交。
自 1.14.0 以来的重要变化
- 删除了对新平台 API 的手动概述访问,因为在使用带有 AGP 7.3 或更高版本(例如 R8 版本 3.3)的 R8 时,以及在使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)的所有构建中,这会自动通过 API 建模发生。不使用 AGP 的客户端建议更新到 D8 版本 8.1 或更高版本。有关更多详细信息,请参阅本文。( Ieb9ae,b/345472586)
- 兼容性类进行了各种更新,以与 Android 15 SDK 保持一致。
1.15.0-rc01 版
2024 年 10 月 16 日
androidx.core:core:1.15.0-rc01
、androidx.core:core-ktx:1.15.0-rc01
和 androidx.core:core-testing:1.15.0-rc01
发布,自上一个版本以来没有更改。
1.15.0-beta01 版
2024 年 10 月 2 日
androidx.core:core:1.15.0-beta01
、androidx.core:core-ktx:1.15.0-beta01
和 androidx.core:core-testing:1.15.0-beta01
发布。1.15.0-beta01 版包含这些提交。
API 更改
- 为
CollectionInfoCompat
添加了itemCount
和importantForAccessibilityItemCount
字段。( Ibaf34)
Bug 修复
- 修复
androidx.core.os.Profiling
中的文档问题 (I2542f)
1.15.0-alpha02 版
2024 年 8 月 21 日
androidx.core:core:1.15.0-alpha02
、androidx.core:core-ktx:1.15.0-alpha02
和 androidx.core:core-testing:1.15.0-alpha02
发布。1.15.0-alpha02 版包含这些提交。
重要变化
- 删除了对新平台 API 的手动概述访问,因为在使用带有 AGP 7.3 或更高版本(例如 R8 版本 3.3)的 R8 时,以及在使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)的所有构建中,这会自动通过 API 建模发生。不使用 AGP 的客户端建议更新到 D8 版本 8.1 或更高版本。有关更多详细信息,请参阅本文。( Ieb9ae,b/345472586)
API 更改
- 为可下载字体定义添加了
fallbackQuery
XML 属性,允许可下载字体进行字符级回退。( Idd544) - 添加了使用
ProfilingManager
的辅助 API (If2292) - 添加了
ActivityOptions.setPendingIntentBackgroundActivityStartMode
的兼容方法 (I3ba1f,b/349617674) - 添加了
DisplayCutoutCompat.getCutoutPath
(I58778,b/279635904) - 撤销了
ParcelCompat.writeBoolean
的弃用,并在 API 级别 29 及以上版本中委托给平台 API。( I9d243,b/313834577) - 创建了接受执行程序的
FontsContractCompat.requestFonts
(I03016,b/302377512) - 撤销了
LocationCompat.isMock
的弃用,并在 API 级别 31 及以上版本中委托给平台 API。( I55940,b/313834577) - 通知现在可以标记为语音邮件。( I068ab)
1.15.0-alpha01 版
2024 年 6 月 12 日
androidx.core:core:1.15.0-alpha01
、androidx.core:core-ktx:1.15.0-alpha01
和 androidx.core:core-testing:1.15.0-alpha01
发布。此版本在内部分支中开发,与 Android 15 Beta 3 (android-35
) 兼容。
API 更改
- 兼容性类进行了各种更新,以与 Android 15 SDK 保持一致。
核心和核心-ktx 1.14 版
1.14.0-alpha01 版
2024 年 5 月 1 日
androidx.core:core:1.14.0-alpha01
、androidx.core:core-ktx:1.14.0-alpha01
和 androidx.core:core-testing:1.14.0-alpha01
发布。1.14.0-alpha01 版包含这些提交。
新功能
- 将 androidx 库的默认
minSdkVersion
更改为 21 (I6ec7f)
API 更改
- 弃用其他过时的 compat 方法。( Ie4470,b/313834577)
- 弃用过时的 compat 方法。( I01d90,b/313834577)
- 更新了
isAtLeastV()
以针对最终确定的 V SDK 返回 true。( I6339a)
核心和核心-ktx 1.13 版
1.13.1 版
2024 年 5 月 1 日
androidx.core:core:1.13.1
、androidx.core:core-ktx:1.13.1
和 androidx.core:core-testing:1.13.1
发布。1.13.1 版包含这些提交。
Bug 修复
- 修复了显示手写工具栏时,手指轻触无法切换到常规键盘的问题 (I7f843, b/332769437)
1.13.0 版
2024 年 4 月 17 日
androidx.core:core:1.13.0
、androidx.core:core-ktx:1.13.0
和 androidx.core:core-testing:1.13.0
发布。1.13.0 版包含这些提交。
自 1.12.0 以来的重要变化
- 库的
minSdkVersion
已提高到19
。许多兼容性 API 已标记为已弃用,因为它们仅在 API 级别 19 之前才需要。 - 一些类已使用 Kotlin 重写,以提供更好的 Kotlin 消费者互操作性,同时保持 Java 兼容性。
- 移除了
FingerprintManagerCompat
,它在 Android V 中已是无操作,不应在早期平台中使用。客户端应立即迁移到BiometricPrompt
。 - 添加了
PathParser
,它可以从 SVG 路径字符串创建 Path 实例。
1.13.0-rc01 版
2024 年 4 月 3 日
androidx.core:core:1.13.0-rc01
、androidx.core:core-ktx:1.13.0-rc01
和 androidx.core:core-testing:1.13.0-rc01
发布。1.13.0-rc01 版包含这些提交。
Bug 修复
- 修复了在 API 30+ 上获取初始系统栏外观的问题 (I18596,b/219993701)
1.13.0-beta01 版
2024 年 3 月 20 日
androidx.core:core:1.13.0-beta01
、androidx.core:core-ktx:1.13.0-beta01
和 androidx.core:core-testing:1.13.0-beta01
发布。1.13.0-beta01 版包含这些提交。
API 更改
PathParser
现在是final
,interpolatePathDataNodes
现在对于不兼容的参数会抛出异常而不是返回boolean
,并且nodesToPath
现在属于PathParser
而不是PathParser.PathDataNode
。( I20d62)- 在
FingerprintManagerCompat
从 Android V 平台 SDK 中移除之前,已将其软删除。不久的将来,该实现将被替换为无操作,开发者应立即从该类迁移。( I7ca1b) Pool
接口及其子类SimplePool
和SynchronizedPool
现在用 Kotlin 编写。存储在 Pool 中的对象的泛型类型现在必须是非空的。( I08afe)
外部贡献
- 由于
GestureDetector
在库的最低 SDK 版本中保证可用,因此GestureDetectorCompat
现在已弃用。感谢 Jake Wharton 的贡献。( Icc4cd) - 由于
MarginLayoutParams
在库的最低 SDK 版本中保证可用,因此MarginLayoutParamsCompat
现在已弃用。感谢 Jake Wharton 的贡献。( I4e0c3)
1.13.0-alpha05 版
2024 年 2 月 7 日
androidx.core:core:1.13.0-alpha05
、androidx.core:core-ktx:1.13.0-alpha05
和 androidx.core:core-testing:1.13.0-alpha05
发布。1.13.0-alpha05 版包含这些提交。
外部贡献
- 感谢 Matthew Zavislak 更新
ContextCompat.registerReceiver
文档以确保正确性。( 8fd733)
1.13.0-alpha04 版
2024 年 1 月 24 日
androidx.core:core:1.13.0-alpha04
、androidx.core:core-ktx:1.13.0-alpha04
和 androidx.core:core-testing:1.13.0-alpha04
发布。1.13.0-alpha04 版包含这些提交。
新功能
- 添加了
AlarmManagerCompat.canScheduleExactAlarms
API (I62e95, b/315440583)
Kotlin 转换
androidx.core.util.Consumer
类已用 Kotlin 重写,现在强制泛型类型T
必须与accept()
方法接收的空值性匹配。( Ie21e0)androidx.core.util.Supplier
已转换为 Kotlin,确保get()
返回的类型的空值性与泛型类型的空值性匹配。( I21e9c)androidx.core.util.Function
已用 Kotlin 重写,确保函数的输入和输出的空值性与使用的泛型类型匹配。( I09dd7)
外部贡献
- 感谢 Kamal Faraj 添加
AlarmManagerCompat.canScheduleExactAlarms
API (I62e95, b/315440583)
1.13.0-alpha03 版
2024 年 1 月 10 日
androidx.core:core:1.13.0-alpha03
、androidx.core:core-ktx:1.13.0-alpha03
和 androidx.core:core-testing:1.13.0-alpha03
发布。1.13.0-alpha03 版包含这些提交。
API 更改
- 弃用
ListViewCompat
,直接使用ListView
。( Iacce6,b/318353933) - 弃用
ViewCompat.LAYOUT_DIRECTION_
API。( I51710,b/317055535) - 弃用
ViewCompat
中过时的 compat 方法。( I0bfc2,b/313834577)
1.13.0-alpha02 版
2023 年 11 月 29 日
androidx.core:core:1.13.0-alpha02
、androidx.core:core-ktx:1.13.0-alpha02
和 androidx.core:core-testing:1.13.0-alpha02
发布。1.13.0-alpha02 版包含这些提交。
新功能
- 添加了
OnUserLeaveHintProvider
接口,允许任何组件接收onUserLeaveHint
事件,这对于实现画中画功能是必需的。这由 Activity1.9.0-alpha01
中的ComponentActivity
实现。( I54892)
API 更改
- 已弃用
androidx.core.os.CancellationSignal
。用法应替换为平台提供的android.os.CancellationSignal
。( Id45f6,b/309499026,b/309054079) OnMultiWindowModeChangedProvider
、OnNewIntentProvider
、OnPictureInPictureModeChangedProvider
、OnConfigurationChangedProvider
和OnTrimMemoryProvider
接口已转换为 Kotlin,以确保其监听器方法采用的Consumer
上的泛型参数具有正确的空值性(它们都不能为空)。( Ib6237)- 发送到各自 Provider 接口的
Consumer
的MultiWindowModeChangedInfo
和PictureInPictureModeChangedInfo
类现在用 Kotlin 编写。( Ie08e2)
依赖项更新
- 核心现在依赖于 Lifecycle
2.6.2
。( I2d94c)
1.13.0-alpha01 版
2023 年 10 月 18 日
androidx.core:core:1.13.0-alpha01
、androidx.core:core-ktx:1.13.0-alpha01
和 androidx.core:core-testing:1.13.0-alpha01
发布。1.13.0-alpha01 版包含这些提交。
API 更改
- 公开
PathParser
。该类可以从 SVG 路径字符串创建 Path 实例。( Ic7af2,b/302376846) - 添加了
Context.createAttributionContext
的兼容方法。( I61dcf,Ibe187) - 将
NotificationCompatSideChannelService
标记为已弃用。( I18fd9) - 用于差动运动轻拂的新 API。( I46b0d,Ia9f68)
- 为
VelocityTracker
添加了额外的 compat API,以跟踪平台 SDK。( I32753)
Bug 修复
- 覆盖
Person
中的equals
和hashCode
方法。( I610a5)
核心和核心-ktx 1.12 版
1.12.0 版
2023 年 9 月 6 日
androidx.core:core:1.12.0
、androidx.core:core-ktx:1.12.0
和 androidx.core:core-testing:1.12.0
发布。1.12.0 版包含这些提交。
自 1.11.0 以来的重要变化
- 为与 TextView、AccessibilityNodeInfo 等的 SDK 34 对齐,添加了许多兼容方法。
- 新的
LocalePreferences
API,帮助开发者轻松访问区域设置数据或用户区域设置偏好。 - 弃用了
app.BundleCompat
,转而使用os.BundleCompat
。 - 弃用了
BuildCompat.isAtLeastU()
。请改用SDK_INT >= 34
。
1.12.0-rc01 版
2023 年 8 月 9 日
androidx.core:core:1.12.0-rc01
、androidx.core:core-ktx:1.12.0-rc01
和 androidx.core:core-testing:1.12.0-rc01
发布,没有重大更改。1.12.0-rc01 版包含这些提交。
1.12.0-beta01 版
2023 年 7 月 26 日
androidx.core:core:1.12.0-beta01
、androidx.core:core-ktx:1.12.0-beta01
和 androidx.core:core-testing:1.12.0-beta01
发布。1.12.0-beta01 版包含这些提交。
API 更改
- 为
TextView
compat 类添加了setLineHeight(unit, lineHeight)
(Ia9fa9) - 从 Android 14 添加了
TypedValueCompat.getUnitFromComplexDimension()
(I958e8) - 为
TextView
compat 类添加了setLineHeight(unit, lineHeight)
(Ib2ee1) - 反向移植杂项辅助功能 API (Ic65ba)
- 反向移植 API 34
AccessibilityNodeInfo
方法 (I44182) - 将稳定的 SDK 检查从实验性阶段毕业 (Ia9b35)
- 反向移植
AccessiiblityWindowInfo
34 API (I96a5d) - 已弃用
BuildCompat.isAtLeastU()
。请改用SDK_INT >= 34
。( I4f8e7,b/289269026) - 删除了实验性
isAtLeastU()
API 的用法 (Ie9117,b/289269026) - 将
BuildCompat
迁移到 Kotlin 以增强弃用标签 (I56775,b/289269026) - 为
TextView
compat 类添加了setLineHeight(unit, lineHeight)
(I15716) - 新的
accessibilityDataSensitive
兼容属性。( I0c6e0) - 当指定
FLAG_NO_CREATE
时,PendingIntentCompat.getActivity
和getService
可能返回 null。( Iffdf0,b/289696515) - 更新了 API 文件以注释兼容性抑制 (I8e87a,b/287516207)
- 添加了
PendingIntentCompat.send()
(Iaf707) - 添加了
Location.removeVerticalAccuracy()
、Location.removeSpeedAccuracy()
和Location.removeBearingAccuracy()
的兼容版本。( I5b640)
Bug 修复
- 如果视图具有辅助功能委托,则该视图对于辅助功能很重要。( If2b54)
1.12.0-alpha05 版
2023 年 6 月 7 日
androidx.core:core:1.12.0-alpha05
、androidx.core:core-ktx:1.12.0-alpha05
和 androidx.core:core-testing:1.12.0-alpha05
发布。此版本在内部分支中开发。
Bug 修复
- 更新了
ColorUtils
类文档,用于根据 Material 3 Hue、Chroma 和 Tone (M3HCT) 参数生成颜色。( I32979,I21c8c) - 修复
android.os.Trace
的弃用 replaceWith (I730f9)
1.12.0-alpha04 版
2023 年 5 月 10 日
androidx.core:core:1.12.0-alpha04
、androidx.core:core-ktx:1.12.0-alpha04
和 androidx.core:core-testing:1.12.0-alpha04
发布。此版本从内部分支发布。
1.12.0-alpha03 版
2023 年 4 月 12 日
androidx.core:core:1.12.0-alpha03
、androidx.core:core-ktx:1.12.0-alpha03
和 androidx.core:core-testing:1.12.0-alpha03
发布。此版本从内部分支发布。
API 更改
- 取消隐藏
NotificationCompat.TvExtender
(aosp/01c67677e9310b2cf4c536d7e951e117d6cce64a) - 添加了公共方法以访问 M3HCT 参数并将 M3HCT 值转换为 ARGB (aosp/06810598aa94bee731bbe0d277933b8b9614934e)
- 添加了
NotificationManager.getCurrentInterruptionFilter
(aosp/b0c6940639e35371d212a7ebd7dbf01c14fc7710) - 将
getCurrentInterruptionFilter
添加到NotifManagerCompat
(aosp/516143e05f824ff49bde3c0c97344a2924867d30) - 弃用了
app.BundleCompat
,转而使用os.BundleCompat
(aosp/bf6169fe9ee1113065d0cf380bd2e09f31ce0a40) - 添加了
TestConsumer
,以便开发者可以在测试中记录值。(aosp/f75a4913940e710842168c832a7f57c2dcae4fdf) - 添加了
TestConsumer
,以便开发者可以在测试中记录值。(aosp/67ad4e2c6488772b7c9a061ee6ca01bba23649f7)
Bug 修复
- 修复了在 Android R 以下版本中
unregisterGnssMeasurementsCallback()
无法正常工作的问题。(aosp/c5a97c4ee956f87d229ec892f2b8849f392e956c)
1.12.0-alpha01 版
2023 年 3 月 8 日
androidx.core:core:1.12.0-alpha01
和 androidx.core:core-ktx:1.12.0-alpha01
发布。1.12.0-alpha01 版包含这些提交。
新功能
- 提供 API 以帮助开发者轻松访问用户的偏好或 ICU 中的区域设置数据。可访问的区域设置数据包括时区、日历类型、温度单位和一周的第一天。
API 更改
- 添加了新的 API
LocalePreferences
,以帮助开发者轻松访问区域设置数据或用户区域设置偏好。
核心和核心-ktx 1.11 版
1.11.0-beta02 版
2023 年 6 月 7 日
androidx.core:core:1.11.0-beta02
、androidx.core:core-ktx:1.11.0-beta02
和 androidx.core:core-testing:1.11.0-beta02
发布。1.11.0-beta02 版包含这些提交。
Bug 修复
- 更新了
ColorUtils
类文档,用于根据 Material 3 Hue、Chroma 和 Tone (M3HCT) 参数生成颜色。( I32979,I21c8c) - 修复
android.os.Trace
的弃用 replaceWith (I730f9)
1.11.0-beta01 版
2023 年 5 月 24 日
androidx.core:core:1.11.0-beta01
、androidx.core:core-ktx:1.11.0-beta01
和 androidx.core:core-testing:1.11.0-beta01
发布。1.11.0-beta01 版包含这些提交。
API 更改
- 添加
ViewCompat
支持方法performHapticFeedback
(Ib02c6) - 将
getDisplay
更改为#getDisplayOrDefault
(I96ff9) - 添加
ContextCompat#getDisplay(Context)
(I7011f, b/178183326) - 为在非 Activity 上下文中获取每个应用区域设置添加
ContextCompat#getContextForLanguage(Context)
(I58e75, b/243457462)
Bug 修复
- 澄清
CollectionInfoCompat
文档,特别是isHierarchical
(I14f6c)
1.11.0-alpha04 版
2023 年 5 月 10 日
androidx.core:core:1.11.0-alpha04
、androidx.core:core-ktx:1.11.0-alpha04
和 androidx.core:core-testing:1.11.0-alpha04
发布。1.11.0-alpha04 版包含这些提交。
API 更改
- 添加了
LinkMovementMethodCompat
,它修复了链接触摸处理 (Ia632c) PendingIntent.getBroadcast()
现在已正确标记为@Nullable
(Ifff96,b/277630907)
Bug 修复
- 修复了
DisplayManagerCompat
中的 Context 泄漏 (I3409b,b/279625765) - 添加了
SoftwareKeyboardControllerCompat
以提供直接方法来显示和隐藏给定 View 的软键盘。这反向移植了在使用某些 API 级别上的WindowInsetsController
API 时已知问题的解决方法,并且是WindowInsetsControllerCompat.show
和隐藏 IME 内嵌类型的支持实现的提取。( Idd0a3)
1.11.0-alpha03 版
2023 年 4 月 19 日
androidx.core:core:1.11.0-alpha03
、androidx.core:core-ktx:1.11.0-alpha03
和 androidx.core:core-testing:1.11.0-alpha03
发布。1.11.0-alpha03 版包含这些提交。
API 更改
- 更新
BuildCompat
以准备 Android 14 Beta 2 (Idc1b1, b/276491001) - 取消隐藏
NotificationCompat.TvExtender
(Ibe13a) - 添加了公共方法以访问 M3HCT 参数并将 M3HCT 值转换为 ARGB (Id7e9d)
1.11.0-alpha02 版
2023 年 4 月 5 日
androidx.core:core:1.11.0-alpha02
、androidx.core:core-ktx:1.11.0-alpha02
和 androidx.core:core-testing:1.11.0-alpha02
发布。1.11.0-alpha02 版包含这些提交。
API 更改
- 将
getCurrentInterruptionFilter
添加到NotifManagerCompat
(I8ec95, b/243183646) - 弃用了
app.BundleCompat
,转而使用os.BundleCompat
(Idc3a2, b/274577000) - 添加了
TestConsumer
,以便开发者可以在测试中记录值。( I937c1)
Bug 修复
- 修复了在 Android R 以下版本中
unregisterGnssMeasurementsCallback()
无法正常工作的问题。( Id1999)
1.11.0-alpha01 版
2023 年 3 月 22 日
androidx.core:core:1.11.0-alpha01
和 androidx.core:core-ktx:1.11.0-alpha01
发布。1.11.0-alpha01 版包含这些提交。
API 更改
- 在 Android U 中,
ContentProvider
API 的getType
要求调用者持有正确的读取权限。FileProvider
现在提供一个默认的getTypeAnonymous
实现,这是不受限制的版本。( I4773f) - 添加了内容捕获 API 的兼容类 (I09366)
- 添加了
NotifCompat.Builder.setLargeIcon(Icon)
(Ic0a5b) - 向
NotificationManagerCompat
添加了批量通知 API。发布多个通知时,建议用户使用此 API。( I2cd7f) - 在 pre-R 平台中添加了支持 Executor 的
registerGnssMeasurementsCallback()
(I579f8)
核心和核心-ktx 1.10 版
1.10.1 版
2023 年 5 月 10 日
androidx.core:core:1.10.1
和 androidx.core:core-ktx:1.10.1
发布。1.10.1 版包含这些提交。
外部贡献
- 修复了结果为 null 时抛出
BadParcelableException
的问题 b/277434277, b/278118318 由 Mygod Studio 贡献
1.10.0 版
2023 年 4 月 5 日
androidx.core:core:1.10.0
和 androidx.core:core-ktx:1.10.0
发布。1.10.0 版包含这些提交。
自 1.9.0 以来的重要变化
- 弃用了辅助功能对象的回收。我们发现即使对于最旧的支持 OS 版本,性能变化也微不足道。( I0a961)
- 为 SDK 扩展版本添加了
BuildCompat
常量。( I6084c) - 有关 1.10.0 预发布版本的新 API 和错误修复,请参阅发布说明。
1.10.0-rc01 版
2023 年 3 月 8 日
androidx.core:core:1.10.0-rc01
和 androidx.core:core-ktx:1.10.0-rc01
发布,与之前的 beta 版没有变化。
1.10.0-beta01 版
2023 年 2 月 22 日
androidx.core:core:1.10.0-beta01
和 androidx.core:core-ktx:1.10.0-beta01
发布。1.10.0-beta01 版包含这些提交。
API 更改
AccessibilityNodeInfoCompat
API 的set/getMinMillisBetweteenContentChanges
已重命名为set/getMinDurationBetweenContentChanges
,现在它们的持续时间为long
。( f46689)- 添加了
NotificationCompat.bigLargeIcon(Icon)
(I60855)
Bug 修复
- 修复了有关
NotificationCompat.Builder.setShowWhen()
默认值的文档 (ba52a2) - 修复
AccelerateInterpolator / DecelerateInterpolator
文档中的拼写错误 (2173505) - 修复
ShortcutInfoCompat
文档中的拼写错误 (44075f) - 修复了
NestedScrollView
和CoordinatorLayout
的上、下、空格和按键变化键盘操作 (bdd72e)
1.10.0-alpha02 版
2023 年 1 月 25 日
androidx.core:core:1.10.0-alpha02
和 androidx.core:core-ktx:1.10.0-alpha02
发布。1.10.0-alpha02 版包含这些提交。
API 更改
- 为
AD_SERVICES
扩展版本添加了BuildCompat
常量 (I51d98) - 将
BEHAVIOR_DEFAULT
添加到WindowInsetsControllerCompat
。BEHAVIOR_SHOW_BARS_BY_SWIPE
和BEHAVIOR_SHOW_BARS_BY_TOUCH
已弃用。( I17b61)
1.10.0-alpha01 版
2023 年 1 月 11 日
androidx.core:core:1.10.0-alpha01
和 androidx.core:core-ktx:1.10.0-alpha01
发布。1.10.0-alpha01 版包含这些提交。
API 更改
- 为
NotificationCompat
添加了CallStyle
(Id9a53, b/199294989) - 为 SDK 扩展版本添加了
BuildCompat
常量 (I6084c) - 添加了用于在辅助功能节点上设置初始焦点的 API。( Id199a)
- 添加了用于内容更改速率限制的新 API (If4ea0)
- 添加了兼容性方法,用于 Android 13 中引入的 Parcel、Bundle 和 Intent 的新 API。某些
ParcelCompat
方法签名已更新,可能需要在升级时更改源代码以符合新签名。( I57e94,b/242048899) - 弃用了辅助功能对象的回收。我们发现即使在最旧的支持版本中,性能变化也微不足道。( I0a961)
- 更新了已弃用隐藏函数的返回类型空值性 (Ibf7b0)
- 为 Point 和 PointF 添加了乘/除运算符重载 (I8e557, b/261574780)
Bug 修复
Core 和 Core-ktx 版本 1.9.0
版本 1.9.0
2022 年 9 月 7 日
androidx.core:core:1.9.0
和 androidx.core:core-ktx:1.9.0
已发布。版本 1.9.0 包含这些提交。
自 1.8.0 以来的重要变更
- 更新以提高与 Android 13 的兼容性,包括可空性变更以及与框架 API 的对等性
- 添加了
IntentSanitizer
,用于在启动不安全的 Intent 之前对其进行净化。( Ib0be5) - 添加了对使用
Icon
的BigPictureStyle
的支持 (Ice26d) - 为需要授予
POST_NOTIFICATIONS
权限的 API 添加了@RequiresPermission
,适用于 SDK 33 及更高版本。( Ie542e) - 改进了 Android 13 辅助功能框架 API 和兼容 API 之间的对等性 (I93c97, I5a074, Iedf82)
版本 1.9.0-rc01
2022 年 8 月 24 日
androidx.core:core:1.9.0-rc01
和 androidx.core:core-ktx:1.9.0-rc01
已发布。版本 1.9.0-rc01 包含这些提交。
Bug 修复
IntentSanitizer.sanitizeByFiltering
在过滤时不再写入日志 (69b3b55)
版本 1.9.0-beta01
2022 年 8 月 10 日
androidx.core:core:1.9.0-beta01
已发布。版本 1.9.0-beta01 包含这些提交。
API 更改
- 添加了对
ACTION_SHOW_TEXT_SUGGESTIONS
和is/setTextSelectable
的兼容性 (Iedf82) - 添加了
IntentSanitizer
,用于在启动不安全的 Intent 之前对其进行净化。( Ib0be5) - 添加了对使用 Icon 的
BigPictureStyle
的支持 (Ice26d, b/215583339) - 更新了可空性注解 (I34cce, b/236498052, b/236498029, b/236497996, b/236497942, b/236497884, b/236497726)
- 添加了
LocationManagerCompat.registerGnssMeasurementsCallback
以解决 Android R 中的错误。( Ie0f6f)
Bug 修复
- 为需要授予
POST_NOTIFICATIONS
权限的 API 添加了@RequiresPermission
,适用于 SDK 33 及更高版本。( Ie542e, b/238790278) - 添加了对 T 中引入的 API 的支持。" into androidx-platform-dev" ()
- 添加了对 T 中引入的 API 的支持。( I358f1)
- 如果兼容性实现无法在 API 14-20 上解析,
TypefaceCompate.create(..., weight, italic)
将回退到平台Typeface.create
(I1ee34, b/145311058) - 添加了以前在 androidx 中缺少的辅助功能框架常量。" into androidx-main am: d5747be010" (I5a074)
- 添加了以前在 androidx 中缺少的辅助功能框架常量。( I93c97)
外部贡献
- 反向移植了
Typeface#create(Typeface, int, boolean)
,允许从字体系列创建具有特定字重的字体 (I342dc)
版本 1.9.0-alpha05
2022 年 6 月 15 日
androidx.core:core:1.9.0-alpha05
和 androidx.core:core-ktx:1.9.0-alpha05
已发布。版本 1.9.0-alpha05 是在一个私有预发布分支中开发的,并且没有公共提交。
API 更改
- 可空性更新,以与 Tiramisu Beta 3 SDK 中最终确定的 API 表面对齐
minCompileSdk
现在是 33,以与 Tiramisu Beta 3 SDK 对齐
版本 1.9.0-alpha04
2022 年 5 月 18 日
androidx.core:core:1.9.0-alpha04
和 androidx.core:core-ktx:1.9.0-alpha04
已发布。版本 1.9.0-alpha04 是基于预发布 Android SDK 构建的,并且没有公开的提交历史记录。
Bug 修复
- 撤销对
BuildCompat.isAtLeastT()
和随附的SDK_INT
检查的废弃
版本 1.9.0-alpha03
2022 年 4 月 27 日
androidx.core:core:1.9.0-alpha03
和 androidx.core:core-ktx:1.9.0-alpha03
已发布。版本 1.9.0-alpha04 包含来自 1.8.0-beta01 的所有提交,但已针对 Android 13 Beta 1 构建。
此版本需要 Android 13 Beta 1 才能编译,并且不保证与未来的开发者预览版运行时兼容。
版本 1.9.0-alpha02
2022 年 3 月 23 日
androidx.core:core:1.9.0-alpha02
和 androidx.core:core-ktx:1.9.0-alpha02
已发布。版本 1.9.0-alpha02 包含来自 1.8.0-alpha06 的所有提交,但已针对 Tiramisu DP2 构建。
版本 1.9.0-alpha01
2022 年 2 月 23 日
androidx.core:core:1.9.0-alpha01
和 androidx.core:core-ktx:1.9.0-alpha01
已发布。版本 1.9.0-alpha01 是从内部分支构建的,并且没有公开可见的提交。
此版本需要 Android Tiramisu DP1 才能编译,并且不保证与未来的开发者预览版运行时兼容。
新功能
- 兼容 Android Tiramisu DP1。
Core 和 Core-ktx 版本 1.8.0
版本 1.8.0
2022 年 6 月 1 日
androidx.core:core:1.8.0
和 androidx.core:core-ktx:1.8.0
已发布。版本 1.8.0 包含这些提交。
自 1.7.0 以来的重要变更
- 对可空性注解进行了大量清理,以提高 Kotlin 的可用性
- 平台对等性改进,针对
ShortcutInfoCompat
、NotificationCompat
等 - 新接口,允许组件接收画中画和多窗口模式变更事件,由 Activity 库中的
ComponentActivity
实现 - 对
MenuProvider
回调方法的改进,包括onPrepareMenu
和onMenuClosed
- 修复了
FileProvider
在某些设备上会因IllegalArgumentException
失败的问题 - 修复了
TypefaceCompat
在 API 29+ 上应用不正确字体字重的问题 (b/194553426),感谢 RikkaW 的贡献
版本 1.8.0-rc02
2022 年 5 月 18 日
androidx.core:core:1.8.0-rc02
和 androidx.core:core-ktx:1.8.0-rc02
已发布。版本 1.8.0-rc02 包含这些提交。
Bug 修复
- 将
OnSharedElementsReadyListener
强制转换为完全限定的平台类,以防止ClassCastException
(0029fed)
版本 1.8.0-rc01
2022 年 5 月 11 日
androidx.core:core:1.8.0-rc01
和 androidx.core:core-ktx:1.8.0-rc01
已发布。版本 1.8.0-rc01 包含这些提交。
API 更改
- 添加了
BuildCompat
检查,用于下一个预发布周期 (If5a8f, b/229859122) - 更新了
BuildCompat.isAtLeastT()
以获取最终的 SDK_INT 值。( Iffae0)
版本 1.8.0-beta01
2022 年 4 月 20 日
androidx.core:core:1.8.0-beta01
和 androidx.core:core-ktx:1.8.0-beta01
已发布,自 1.8.0-alpha07 以来没有变更。版本 1.8.0-beta01 包含这些提交。
版本 1.8.0-alpha07
2022 年 4 月 6 日
androidx.core:core:1.8.0-alpha07
和 androidx.core:core-ktx:1.8.0-alpha07
已发布。版本 1.8.0-alpha07 包含这些提交。
Bug 修复
TypefaceCompat
现在将在 API 29+ 上同时遵循请求的样式信息和加载的样式信息。当加载的字体不是FontWeight.Normal
或FontWeight.Bold
时,这是一种行为变更,因为将使用实际加载的字重和样式。( #212, b/194553426)
外部贡献
版本 1.8.0-alpha06
2022 年 3 月 23 日
androidx.core:core:1.8.0-alpha06
已发布。版本 1.8.0-alpha06 包含这些提交。
API 更改
MenuProvider
接口现在包含onPrepareMenu()
回调,当菜单被动态修改并应显示时调用。( Ie85f9)MenuProvider
接口现在包含onMenuClosed()
方法,用于在菜单应关闭时使用。( If5a16)- 更新了
IconCompat#getResId
,使其具有正确的资源注解类型,以匹配框架中Icon#getResId
中的相应方法 (I49700) - 恢复了之前仅依赖 View 的变更,对于
WindowInsetsControllerCompat
,并再次要求一个 Window,这是管理某些窗口标志所必需的。废弃了ViewCompat.getWindowInsetsController
,以取代WindowCompat.getInsetsController
,以确保使用正确的 Window(例如,如果 View 位于对话框中)。( I660ae, b/219572936) - 更新了 core 和 appcompat 中的可空性以匹配 Tiramisu DP2 (I0cbb7)
- 向
BitmapCompat
添加了一个方法,以实现更平滑的位图缩减。( Ib706c) - 向
ActivityCompat.requestDragAndDropPermissions
添加了可空性注解 (I0f2b0, b/206113378) - 向
FileProvider
添加了一个变通方案,用于解决 OEM 剥离清单中元数据的问题。( I82f63)
Bug 修复
- 考虑父级可见性变更,以获取低于 P 版本的辅助功能面板可见性状态 (I8e04f)
版本 1.8.0-alpha05
2022 年 2 月 23 日
androidx.core:core:1.8.0-alpha05
和 androidx.core:core-ktx:1.8.0-alpha05
已发布。版本 1.8.0-alpha05 包含这些提交。
API 更改
- 更新了 androidx.core.os 类的可空性 (If18cd, b/206113622)
- 更新了 androidx.core.app 类的可空性 (I657eb, b/206113302)
- 更新了 androidx.core.text 类的可空性 (I08329, b/206113384)
- 向
AccessibilityNodeInfoCompat
添加了ExtraData
函数 (If2fc7, b/137789185) - 添加了
bundleOf()
的零参数重载,以避免在创建空 Bundle 时进行不可见的数组分配 (If7089) - 添加了
Continuation<T>.asFoo()
适配器,用于创建回调,以便为接受通用/泛型回调类型的 Android API 编写挂起包装器 (I6615e) - 添加了可为空的
Drawable.toBitmapOrNull
方法,以避免异常 (I2342a)
版本 1.8.0-alpha04
2022 年 2 月 9 日
androidx.core:core:1.8.0-alpha04
和 androidx.core:core-ktx:1.8.0-alpha04
已发布。版本 1.8.0-alpha04 包含这些提交。
API 更改
- 添加了
OnPictureInPictureModeChangedProvider
接口,允许任何组件接收画中画模式变更事件。这由 Activity1.5.0-alpha02
中的ComponentActivity
实现。( I9f567) - 添加了
OnMultiWindowModeChangedProvider
接口,允许任何组件接收多窗口模式变更事件。这由 Activity1.5.0-alpha02
中的ComponentActivity
实现。( I62d91) - 清理了部分 androidx.core API 的可空性。( Ia0e2f, b/206113818)
版本 1.8.0-alpha03
2022 年 1 月 26 日
androidx.core:core:1.8.0-alpha03
和 androidx.core:core-ktx:1.8.0-alpha03
已发布。版本 1.8.0-alpha03 包含这些提交。
API 更改
- 将
WindowInsetsControllerCompat
转换为依赖于 View,而不是 Window 或平台WindowInsetsController
。这改善了对话框的行为,显示 IME,并确保非废弃创建方法的变通方案 (b/180881870)。( I29264, b/207401542, b/210121779) - 清理了部分 androidx.core API 的可空性。( Ib2583, b/206113818)
- 修复了
performAccessibilityAction
参数的可空性 (Ibbafe) - 添加了解决
ColorStateList
因主题键控缓存和 Theme.applyStyle 引起的问题的方法 (I9188b, b/207739887) - 更新了快捷方式可见性 API 以提高可读性 (Ia58df)
- 添加了
persistableBundleOf()
的零参数重载,以避免在创建空 PersistableBundle 时进行不必要的数组分配 (Icd7a4)
版本 1.8.0-alpha02
2021 年 12 月 15 日
androidx.core:core:1.8.0-alpha02
和 androidx.core:core-ktx:1.8.0-alpha02
已发布。版本 1.8.0-alpha02 包含这些提交。
API 更改
- 添加了实验性的
BuildCompat
方法,用于未来的 SDK (Iafd82, b/207528937) - 添加了用于将文档转换为快捷方式以及将快捷方式转换回文档的实用方法。( Id512c)
- 更新了快捷方式的可见性 API 以提高可读性 (I86dec)
- 添加了
OnNewIntentProvider
、OnConfigurationChangedProvider
和onTrimMemoryProvider
接口,可用于指示您的自定义 Activity 可以将这些事件分派给任何添加了监听器的组件。( If1f8b, If623b, Ia9295)
版本 1.8.0-alpha01
2021 年 12 月 1 日
androidx.core:core:1.8.0-alpha01
和 androidx.core:core-ktx:1.8.0-alpha01
已发布。版本 1.8.0-alpha01 包含这些提交。
API 更改
- 对可空性注解进行了大量清理
- 添加了一个新 API
ShortcutInfoCompat.Builder#setHiddenFromLauncher
,用于确定快捷方式是否应在启动器中隐藏。( Ia2a71) - 添加了
NotificationCompat.Action#setAuthenticationRequired
(Ieeafa, b/202172887) - 添加了
NotificationCompat.BigPictureStyle.setContentDescription
(I3b483) - 添加了扩展函数
Map<String, Any?>.toPersistableBundle()
(I82c86)
Bug 修复
Core 和 Core-ktx 版本 1.7
版本 1.7.0
2021 年 10 月 27 日
androidx.core:core:1.7.0
和 androidx.core:core-ktx:1.7.0
已发布。版本 1.7.0 包含这些提交。
自 1.6.0 以来的重要变更
- 添加了对与 SDK 30 及更高版本的权限撤销和应用休眠功能交互的支持,在支持的设备上反向移植到 SDK 23。有关详细信息,请参阅 IntentCompat.createManageUnusedAppRestrictionsIntent。
- 添加了对在组件中组合菜单支持的功能,有关详细信息,请参阅 MenuProvider。
版本 1.7.0-rc01
2021 年 10 月 13 日
androidx.core:core:1.7.0-rc01
和 androidx.core:core-ktx:1.7.0-rc01
已发布。版本 1.7.0-rc01 包含这些提交。
版本 1.7.0-beta02
2021 年 9 月 29 日
androidx.core:core:1.7.0-beta02
和 androidx.core:core-ktx:1.7.0-beta02
已发布。版本 1.7.0-beta02 包含这些提交。
Bug 修复
- 在生命周期被
DESTROYED
之前移除MenuProvider
时,MenuHostHelper
现在将正确移除所有 LifecycleObserver。( Ibe2e1, b/199788262) - 更新了“未使用的应用限制常量”的描述,以便开发者更清楚 (I2858e)
版本 1.7.0-beta01
2021 年 9 月 15 日
androidx.core:core:1.7.0-beta01
和 androidx.core:core-ktx:1.7.0-beta01
已发布。版本 1.7.0-beta01 包含这些提交。
API 更改
LocationRequestCompat.toProvider
现在可以返回 null (Ib5a09)
版本 1.7.0-alpha02
2021 年 9 月 1 日
androidx.core:core:1.7.0-alpha02
和 androidx.core:core-ktx:1.7.0-alpha02
已发布。版本 1.7.0-alpha02 包含这些提交。
新功能
- 精简和统一了生命周期感知菜单的管理方式,有关详细信息,请参阅 MenuProvider。
API 更改
- 为管理
MenuProvider
的组件添加了MenuHost
接口。( I83f23) - 添加了
MenuProvider
接口,可用于指示组件正在提供菜单项。( If8a40) - 添加了
MenuHostHelper
以简化在组件中实现MenuHost
。( I74f4a) - 添加了
LocationRequestCompat.toLocationRequest()
,用于转换为平台类。( I71e75) - 添加了
DocumentsContractCompat
类,以与平台 API 对等。( Ia9e91) - 添加了
NotificationCompat.BigPictureStyle.showBigPictureWhenCollapsed(boolean)
,以与平台 API 对等。( I8cd88) - 修复了
PermissionChecker
中的checkSelfPermission
会显示麦克风/摄像头指示器的问题。( I572a9) - 为
setImportantForAccessibility
添加了显式线程注解。( I990fa) - 更新了
getUnusedAppRestrictionsStatus
以符合 API 指南。( I28a18) - 完成了
getUnusedAppRestrictionsStatus
的功能。( I7c2d6) - 为
LocationCompat
添加了对垂直精度、速度精度和方位精度的支持。( I1d3e9) - 向
MathUtils
添加了数学兼容函数。( Idb590) - 将
OnReceiveContentListener
集成到兼容 API 中。( Ic6914, b/173814913) - 添加了
ActivityCompat#isLaunchedFromBubble
,以与平台对等。( I6961a) - 添加了
LocationRequest
和LocationManager.hasProvider()
,以与平台对等。( I4f3e4)
Bug 修复
- 移除了在
PackageManagerCompat
中使用 lambda 的方式,以避免LambdaDesugaring
错误。( I36c87)
版本 1.7.0-alpha01
2021 年 6 月 30 日
androidx.core:core:1.7.0-alpha01
和 androidx.core:core-ktx:1.7.0-alpha01
已发布。版本 1.7.0-alpha01 包含这些提交。
API 更改
- 添加了一个 API,用于配置 InputConnection 以使用
View.performReceiveContent
来处理 IME 对InputConnection.commitContent
的调用。( I3a2ad) - 将两个 API 的功能合并为一个 (I261df)
- 修改了两个 API 的功能,用于与未使用的应用限制功能(例如权限撤销、应用休眠)一起使用 (Ic1616)
- 添加了三个 API,用于与未使用的应用限制功能(例如权限撤销、应用休眠)一起使用 (I606d7)
- 向多个 Compat 类添加了可空性注解 (I2802a, b/188452327, b/189962089)
- 添加了三个 API,用于与未使用的应用限制功能(例如权限撤销、应用休眠)一起使用 (Icafee)
- 解决了 ViewCompat 中缺少可空性注解的问题 (Ic346e, b/188453571)
Core Remote Views 版本 1.1
版本 1.1.0
2024 年 6 月 12 日
androidx.core:core-remoteviews:1.1.0
已发布。版本 1.1.0 包含这些提交。
自 1.0.0 以来的重要变更
- Core
RemoteViews
迁移到 1.1.0 稳定版。
版本 1.1.0-rc01
2024 年 5 月 14 日
androidx.core:core-remoteviews:1.1.0-rc01
已发布。版本 1.1.0-rc01 包含这些提交。
新功能
- 将
RemoteViews
1.1.0 迁移到候选发布版本。
Bug 修复
- 将 androidx 库的默认
minSdkVersion
移至 21。( I6ec7f)
版本 1.1.0-beta02
2024 年 4 月 17 日
androidx.core:core-remoteviews:1.1.0-beta02
已发布。自上次发布以来没有重大变更。
版本 1.1.0-beta01
2024 年 4 月 3 日
androidx.core:core-remoteviews:1.1.0-beta01
已发布。版本 1.1.0-beta01 包含这些提交。
版本 1.1.0-alpha01
2024 年 2 月 7 日
androidx.core:core-remoteviews:1.1.0-alpha01
已发布。版本 1.1.0-alpha01 包含这些提交。
新功能
- 版本提升以匹配依赖项版本。
Core Remote Views 版本 1.0
1.0.0 版
2023 年 9 月 6 日
androidx.core:core-remoteviews:1.0.0
已发布。版本 1.0.0 包含这些提交。
1.0.0 的主要功能
- 将 core-remoteviews 迁移到 1.0.0 稳定版
版本 1.0.0-beta04
2023 年 5 月 10 日
androidx.core:core-remoteviews:1.0.0-beta04
已发布。版本 1.0.0-beta04 包含这些提交。
Bug 修复
- 修复了兼容库中在极端情况下抛出
ArrayOutOfBoundsException
的问题。
版本 1.0.0-beta03
2022 年 10 月 5 日
androidx.core:core-remoteviews:1.0.0-beta03
已发布。版本 1.0.0-beta03 包含这些提交。
新功能
- 未添加新功能。
版本 1.0.0-beta02
2022 年 8 月 10 日
androidx.core:core-remoteviews:1.0.0-beta02
已发布。版本 1.0.0-beta02 包含这些提交。
Bug 修复
- 版本修复
1.0.0-beta01 版
2022 年 6 月 29 日
androidx.core:core-remoteviews:1.0.0-beta01
已发布。版本 1.0.0-beta01 包含这些提交。
新功能
- 将
Core-RemoteViews
迁移到测试版。
1.0.0-alpha03 版
2022 年 2 月 23 日
androidx.core:core-remoteviews:1.0.0-alpha03
已发布。版本 1.0.0-alpha03 包含这些提交。
Bug 修复
- 基础设施修复。
1.0.0-alpha02 版
2022 年 1 月 26 日
androidx.core:core-remoteviews:1.0.0-alpha02
已发布。版本 1.0.0-alpha02 包含这些提交。
1.0.0-alpha01 版
2021 年 12 月 15 日
androidx.core:core-remoteviews:1.0.0-alpha01
已发布。版本 1.0.0-alpha01 包含这些提交。
新功能
- 新的
RemoteViews.setRemoteAdapter
API 的反向移植。 - Kotlin 扩展函数,用于避免在调用
RemoteViews
方法时进行反射。 - 包含用于处理
App Widget
尺寸 API 的辅助函数的库。
Core Performance 版本 1.0
1.0.0 版
2024 年 1 月 10 日
androidx.core:core-performance:1.0.0
、androidx.core:core-performance-play-services:1.0.0
和 androidx.core:core-performance-testing:1.0.0
已发布。版本 1.0.0 包含这些提交。
1.0.0 的主要功能
- Core Performance - 提供了一种可靠的机制,供开发者在运行时识别设备的性能水平,从而相应地优化应用的用户体验。
- Core Performance Play Services - Google 特定的实现,为经过测试的设备和操作系统版本提供最新的媒体性能等级信息。
- Core Performance Testing - Core Performance 的测试替身。
Bug 修复
- 修复了初始化
PlayServicesDevicePerformance
时发生的崩溃,该问题在版本1.0.0-beta2
中发现。( b/318803680)
1.0.0-rc01 版
2023 年 12 月 13 日
androidx.core:core-performance:1.0.0-rc01
、androidx.core:core-performance-play-services:1.0.0-rc01
和 androidx.core:core-performance-testing:1.0.0-rc01
已发布。版本 1.0.0-rc01 包含这些提交。
新功能
- Core Performance - 更新了库实现。(
DevicePerformance
通用实现)。 - Core Performance Play Services - 初始库实现。(Google 特定的
DevicePerformance
实现)。 - Core Performance Testing - 初始库实现。(包含 Core Performance 的测试替身)。
API 更改
DevicePerformance
特定 API 的初始 RC 发布。
版本 1.0.0-beta02
2023 年 10 月 4 日
androidx.core:core-performance:1.0.0-beta02
、androidx.core:core-performance-play-services:1.0.0-beta02
和 androidx.core:core-performance-testing:1.0.0-beta02
已发布。版本 1.0.0-beta02 包含这些提交。
新功能
- 测试相关重构。
API 更改
- API 使用模式未变。
1.0.0-beta01 版
2023 年 9 月 6 日
androidx.core:core-performance:1.0.0-beta01
、androidx.core:core-performance-play-services:1.0.0-beta01
和 androidx.core:core-performance-testing:1.0.0-beta01
已发布。版本 1.0.0-beta01 包含这些提交。
新功能
- Core Performance - 更新了库实现。(
DevicePerformance
通用实现)。 - Core Performance Play Services - 初始库实现。(Google 特定的
DevicePerformance
实现)。 - Core Performance Testing - 初始库实现。(包含 Core Performance 的测试替身)。
API 更改
DevicePerformance
特定 API 的初始测试版发布。
1.0.0-alpha03 版
2023 年 8 月 23 日
androidx.core:core-performance:1.0.0-alpha03
、androidx.core:core-performance-play-services:1.0.0-alpha03
和 androidx.core:core-performance-testing:1.0.0-alpha03
已发布。版本 1.0.0-alpha03 包含这些提交。
新功能
core-performance-testing
的初始库实现,包含 core-performance 的测试替身。core-performance-play-services
的初始库实现。Google 特定实现提供了最新的媒体性能等级信息。
API 更改
- 添加了提供 Google Play 服务媒体性能等级的可选模块。
- core-performance 构造函数已更改以支持可选实现。
1.0.0-alpha02 版
2022 年 3 月 23 日
androidx.core:core-performance:1.0.0-alpha02
已发布。版本 1.0.0-alpha02 包含这些提交。
新功能
- 提供一种简单可靠的机制,供开发者在运行时识别设备的性能水平,以便提供优化的应用体验。
- 此初始版本使用了一系列手动测试的设备,这些设备被授予了高于 Build.VERSION.MEDIA_PERFORMANCE_CLASS 中声明级别的性能等级值
1.0.0-alpha01 版
2021 年 12 月 15 日
androidx.core:core-performance:1.0.0-alpha01
已发布。版本 1.0.0-alpha01 包含这些提交。
Core Splashscreen 版本 1.2
版本 1.2.0-beta02
2025 年 4 月 23 日
androidx.core:core-splashscreen:1.2.0-beta02
已发布。版本 1.2.0-beta02 包含这些提交。
版本 1.2.0-beta01
2025 年 2 月 26 日
androidx.core:core-splashscreen:1.2.0-beta01
已发布。版本 1.2.0-beta01 包含这些提交。
版本 1.2.0-alpha02
2024 年 9 月 4 日
androidx.core:core-splashscreen:1.2.0-alpha02
已发布。版本 1.2.0-alpha02 包含这些提交。
Bug 修复
- 向
SplashScreen
的主题添加isLightTheme
属性 (I01000, b/238522114) - 通过
AppCompatResources
获取启动屏幕图标 (Ib05e, b/289242141, b/263972037) - 删除了对新平台 API 的手动概述访问,因为在使用带有 AGP 7.3 或更高版本(例如 R8 版本 3.3)的 R8 时,以及在使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)的所有构建中,这会自动通过 API 建模发生。不使用 AGP 的客户端建议更新到 D8 版本 8.1 或更高版本。有关更多详细信息,请参阅本文。( Ieb9ae,b/345472586)
版本 1.2.0-alpha01
2024 年 4 月 17 日
androidx.core:core-splashscreen:1.2.0-alpha01
已发布。版本 1.2.0-alpha01 包含这些提交。
Bug 修复
- 从 v30 开始,将
Base.Theme.SplashScreen
的剪切模式更改为始终。( Idfc3f) - 从 API 31 开始,将
enforceNavigationBarContrast
重置为系统默认值,这样启动屏幕主题就不会损坏 Activity 的主题。从 API 31+ 开始,启动屏幕不会创建为PhoneWindow
,因此不需要从 API 29 继承该值。此外,还移除了applyAppSystemUiTheme
的覆盖操作,因为enforceNavigationBarContrast
在启动期间可能已经从应用端更改,因此从属性覆盖它没有意义。( Ic2cd9) - 设置默认的浅色导航栏,它遵循日/夜主题。因此对于 API 33+ 平台,启动屏幕主题在移除启动屏幕时不会导致闪烁。( I8023a)
- 从 API 33 开始,在收到启动屏幕视图后不要覆盖 Activity 主题。( I10587b)
Core Splashscreen 版本 1.1
版本 1.1.0-rc01
2024 年 4 月 3 日
androidx.core:core-splashscreen:1.1.0-rc01
已发布。版本 1.1.0-rc01 包含这些提交。
Bug 修复
- 为带有 48x48dp 图标的 Wear 设备提供默认尺寸 (Ib8de8, b/256678037)
- 修复了
SplashScreenView#getIconView
导致 NPE 崩溃的问题 (6abfd6, b/243457485)
版本 1.1.0-alpha02
2023 年 9 月 6 日
androidx.core:core-splashscreen:1.1.0-alpha02
已发布。版本 1.1.0-alpha02 包含这些提交。
Bug 修复
- 为带有 48x48dp 图标的 Wear 设备提供默认尺寸 (Ib8de8, b/256678037)
依赖项更新
- Core-Splashscreen 现在可针对 API 34 进行编译。
版本 1.1.0-alpha01
2023 年 2 月 22 日
androidx.core:core-splashscreen:1.1.0-alpha01
已发布。这是在内部分支中开发的。
Bug 修复
- 修复了当
SplashScreenView#getIconView
返回 null 时出现的NullPointerException
。( e231ab)
Core Splashscreen 版本 1.0
版本 1.0.1
2023 年 4 月 19 日
androidx.core:core-splashscreen:1.0.1
已发布。版本 1.0.1 包含这些提交。
Bug 修复
- 为带有 48x48dp 图标的 Wear 设备提供默认尺寸 (Ib8de8, b/256678037)
1.0.0 版
2022 年 7 月 27 日
核心 SplashScreen 库将新的 Android 12 启动屏幕引入到 API 23 及以上的所有设备。使用此启动屏幕库,您的应用不需要任何自定义的 SplashScreen Activity,并可利用正确的 API 实现应用的快速启动。要使用它,只需遵循我们的指南中概述的步骤。有关 Android 12 启动屏幕的更多信息,请访问官方文档。
androidx.core:core-splashscreen:1.0.0
已发布。版本 1.0.0 包含这些提交。
1.0.0-rc01 版
2022 年 5 月 18 日
androidx.core:core-splashscreen:1.0.0-rc01
已发布。版本 1.0.0-rc01 包含这些提交。
- 自上次 Beta 版发布以来没有变更。
版本 1.0.0-beta02
2022 年 3 月 23 日
androidx.core:core-splashscreen:1.0.0-beta02
已发布。版本 1.0.0-beta02 包含这些提交。
Bug 修复
- 修复了
Lateinit property platformView has not been initialized
(b/214835299)
外部贡献
- 修复了 MIUI 在深色模式下的渲染问题,并明确设置
android:animateLayoutChanges
为 false,以避免在OnExitAnimationListener
中移除启动屏幕时出现淡出动画 (#327)
1.0.0-beta01 版
2022 年 1 月 12 日
androidx.core:core-splashscreen:1.0.0-beta01
已发布。版本 1.0.0-beta01 包含这些提交。
Bug 修复
- 改进的夜间模式处理确保在所有 API 上使用默认参数时能够处理夜间模式。2d1d182
修复了 Android 12 新启动屏幕中引入的错误
- 修复了 API 31 上的系统栏闪烁问题:确保在自定义退出动画时系统栏不会闪烁。5a75362
- 修复了使用 OnExitAnimationListener 时的插入处理:确保在使用 OnExitAnimationListener 时内容不会跳动。4c8f264
1.0.0-alpha02 版
2021 年 9 月 29 日
androidx.core:core-splashscreen:1.0.0-alpha02
已发布。版本 1.0.0-alpha02 包含这些提交。
新功能
- 更好的插入支持:即使设置了
OnExitAnimationListener
,启动屏幕现在也会在所有 API 上全屏显示。 postSplashScreenTheme
是可选的:您可以在onCreate()
之前简单地调用activity.setTheme()
,来在启动屏幕显示后设置您的应用主题。- 对
windowSplashScreenIconBackgroundColor
属性的向后支持:使用Theme.SplashScreen.IconBackground
和windowSplashScreenIconBackgroundColor
,您可以为启动屏幕图标添加背景。 - 图标的尺寸已更正,以匹配平台的规范。
API 更改
- 添加了 windowSplashScreenIconBackgroundColor 属性的向后兼容性。
- 将 minSdkVersion 降级到 API 21 (Idd050, b/198161849, b/197759820, b/198165621)
Bug 修复
- 使
postSplashScreenTheme
成为可选 (I8c4bf)
1.0.0-alpha01 版
2021 年 6 月 30 日
androidx.core:core-splashscreen:1.0.0-alpha01
已发布。
新功能
core-splashscreen
为新的启动屏幕 API 提供向后兼容性。此第一个 Alpha 版本包含所有反向移植到 API 23 的新 API,但图标背景除外。- 有关使用信息,请参阅
androidx.core.splashscreen
中的 KDoc。
Core Google Shortcuts 版本 1.2
版本 1.2.0-alpha01
2023 年 7 月 26 日
androidx.core:core-google-shortcuts:1.2.0-alpha01
已发布。版本 1.2.0-alpha01 包含这些提交。
API 更改
- 合并了用于 a、b、c 路径的公共和实验性 API 文件 (I8cfee, b/278769092)
- 将
androidx.core
组迁移为使用合并的公共 API 文件 (Ifdef4, b/278769092)
Core Google Shortcuts 版本 1.1.0
版本 1.1.0
2022 年 10 月 24 日
androidx.core:core-google-shortcuts:1.1.0
已发布。版本 1.1.0 包含这些提交。
自 1.0.0 以来的重要变更
- 从使用
com.google.firebase:firebase-appindexing
迁移到新的com.google.android.gms:play-services-appindex
库。此版本库与com.google.firebase:firebase-appindexing
不兼容。开发者应避免同时使用这两个库,以避免构建错误。
版本 1.1.0-rc01
2022 年 10 月 5 日
androidx.core:core-google-shortcuts:1.1.0-rc01
已发布。版本 1.1.0-rc01 包含这些提交。
新功能
- 从使用
com.google.firebase:firebase-appindexing
迁移到新的com.google.android.gms:play-services-appindex
库。请注意,此版本库与com.google.firebase:firebase-appindexing
不兼容。开发者应避免同时使用这两个库,以避免构建错误。
版本 1.1.0-beta01
2022 年 9 月 21 日
androidx.core:core-google-shortcuts:1.1.0-beta01
已发布。版本 1.1.0-beta01 包含这些提交。
新功能
- 移除了未使用的依赖项。未添加新功能。
版本 1.1.0-alpha03
2022 年 9 月 7 日
androidx.core:core-google-shortcuts:1.1.0-alpha03
已发布。版本 1.1.0-alpha03 包含这些提交。
新功能
- 移除了未使用的依赖项。未添加新功能。
版本 1.1.0-alpha02
2022 年 8 月 24 日
androidx.core:core-google-shortcuts:1.1.0-alpha02
已发布。版本 1.1.0-alpha02 包含这些提交。
新功能
- 将依赖项从
com.google.firebase:firebase-appindexing
更新到com.google.android.gms:play-services-appindex
。使用此新版本的开发者不应外部依赖于com.google.firebase:firebase-appindexing
,因为这两个库现在不兼容。
版本 1.1.0-alpha01
2021 年 8 月 4 日
androidx.core:core-google-shortcuts:1.1.0-alpha01
已发布。版本 1.1.0-alpha01 包含这些提交。
新功能
- 捐赠快捷方式中基于 URI 的图标的索引支持,以便 Google 应用显示。
Core 和 Core-ktx 版本 1.6.0
版本 1.6.0
2021 年 6 月 30 日
androidx.core:core:1.6.0
和 androidx.core:core-ktx:1.6.0
已发布。版本 1.6.0 包含这些提交。
自 1.5.0 以来的重要变更
- 添加了对解析嵌套
ColorStateList
中的主题属性的支持。( I2e409 b/155579892) - 为 CheckedTextView 反向移植了可着色背景和复选标记 (I8575c)
版本 1.6.0-rc01
2021 年 6 月 16 日
androidx.core:core:1.6.0-rc01
和 androidx.core:core-ktx:1.6.0-rc01
已发布。版本 1.6.0-rc01 包含这些提交。
API 更改
- JobIntentService 已被废弃,转而使用 WorkManager (Ic7749, b/149049019)
版本 1.6.0-beta02
2021 年 6 月 2 日
androidx.core:core:1.6.0-beta02
和 androidx.core:core-ktx:1.6.0-beta02
已发布。版本 1.6.0-beta02 包含这些提交。
Bug 修复
- 更新了
BuildCompat
,以在最新平台上使用当前长按超时 (b/185118174) - 移除了
ContextCompat
、ContentLoadingProgress
方法中对synchronized
的使用。
版本 1.6.0-beta01
2021 年 5 月 18 日
androidx.core:core:1.6.0-beta01
和 androidx.core:core-ktx:1.6.0-beta01
已发布。版本 1.6.0-beta01 包含这些提交。
API 更改
- 反向移植了
Objects.requireNonNull()
(I27db5, b/179904366)
版本 1.6.0-alpha03
2021 年 5 月 5 日
androidx.core:core:1.6.0-alpha03
和 androidx.core:core-ktx:1.6.0-alpha03
已发布。版本 1.6.0-alpha03 包含这些提交。
新功能
- 添加了对解析嵌套
ColorStateList
中的主题属性的支持。( I2e409 b/155579892)
Bug 修复
防止在处理 AppCompat 支持的视图上
null
自定义选择操作模式回调时出现 NPE。( I033c7, b/173435375)添加了对 SDK < 30 上的 setSystemBarsBehavior 的支持。( I062c8, b/173203649)
版本 1.6.0-alpha02
2021 年 4 月 15 日
androidx.core:core:1.6.0-alpha02
和 androidx.core:core-ktx:1.6.0-alpha02
已发布。版本 1.6.0-alpha02 包含这些提交。
API 更改
- 添加了
TelephoneManagerCompat
和SubscriptionManagerCompat
(I5568d) - 移除了
ShortcutInfoCompat
中已废弃的addCapabilityBinding
方法 (Ie8f70) - 向
ShortcutInfoCompat.Builder
添加了带参数的addCapabilityBinding
和不带参数的addCapabilityBinding
setter,废弃了旧的addCapabilityBinding
(I90686) - 添加了
LocationCompat
类和LocationManagerCompat.getCurrentLocation()
(I78d9a) - 废弃了
ModeCompat.isNative
,它已被DisplayCompat.getMode
取代。( I9a6a2) - 添加了
ContextCompat.getAttributionTag()
和UserHandleCompat.getUserHandleForUid()
(Iea486)
外部贡献
- 为
CheckedTextView
反向移植了可着色背景和复选标记 (I8575c)
版本 1.6.0-alpha01
2021 年 3 月 24 日
androidx.core:core:1.6.0-alpha01
和 androidx.core:core-ktx:1.6.0-alpha01
已发布。版本 1.6.0-alpha01 包含这些提交。
API 更改
- 添加了
Handler.hasCallbacks()
方法,以与平台 SDK 对等 (Idce1c, b/113855676) - 向
ShortcutInfoCompat.Builder
添加了与功能相关的 setter 方法 (I45af6)
Core Google Shortcuts 版本 1.0
版本 1.0.1
2022 年 5 月 18 日
androidx.core:core-google-shortcuts:1.0.1
已发布。版本 1.0.1 包含这些提交。
Bug 修复
- 修复了 ProGuard 规则,以防止方法被意外移除
1.0.0 版
2021 年 6 月 30 日
androidx.core:core-google-shortcuts:1.0.0
已发布。版本 1.0.0 包含这些提交。
1.0.0 的主要功能
包含此模块,以允许使用 ShortcutManagerCompat 保存的快捷方式也捐赠给 Google。这将为用户解锁这些快捷方式的附加功能,例如将其显示为建议,或允许 Google 助理通过语音查询来完成它们。可以捐赠的快捷方式数量没有限制,并且以这种方式捐赠的快捷方式会保存在设备上。有关详细信息,请参阅关于向助理推送动态快捷方式的完整文档。
1.0.0-rc01 版
2021 年 6 月 16 日
androidx.core:core-google-shortcuts:1.0.0-rc01
已发布。版本 1.0.0-rc01 包含这些提交。
1.0.0-beta01 版
2021 年 5 月 18 日
androidx.core:core-google-shortcuts:1.0.0-beta01
已发布。 1.0.0-beta01 版本包含这些提交。
新功能
- 通过
core-google-shortcuts
库添加的快捷方式将作为快捷方式对象而非通用 schema.org/Thing 对象保存在 Firebase 应用索引中。
Bug 修复
- 移除了库中的 minSdkVersion 要求。此库仍仅适用于 API 版本 21 及更高版本,但应用将不再需要将其应用的 minSdkVersion 设置为 21。
1.0.0-alpha03 版
2021 年 5 月 5 日
androidx.core:core-google-shortcuts:1.0.0-alpha03
已发布。 1.0.0-alpha03 版本包含这些提交。
Bug 修复
- 添加/更新快捷方式时不再自动报告快捷方式使用情况。现在,使用情况报告将移至
ShortcutManagerCompat#pushDynamicShortcut
。
1.0.0-alpha02 版
2021 年 4 月 15 日
androidx.core:core-google-shortcuts:1.0.0-alpha02
已发布。 1.0.0-alpha02 版本包含这些提交。
新功能
- 通过将
androidx.core:core-google-shortcuts
作为可选组件与androidx.core
一起依赖,您可以使用ShortcutManagerCompat
来捐赠供 Google 使用的快捷方式。 - 一个新的 TrampolineActivity 将与依赖此模块的应用合并。TrampolineActivity 用于打开此模块捐赠的快捷方式。
API 更改
- 添加了
ShortcutInfoChangeListenerImpl
,供ShortcutManagerCompat
用于将快捷方式捐赠给 Firebase 应用索引。
Core 和 Core-ktx 版本 1.5.0
版本 1.5.0
2021 年 5 月 18 日
androidx.core:core:1.5.0
和 androidx.core:core-ktx:1.5.0
已发布。 1.5.0 版本包含这些提交。
自 1.4.0 以来的重要变更
- 支持新的 Insets 动画 API
- 更新了
OnReceiveContentListener
以支持富媒体内容 - 将
WindowInsetsController
和WindowInsetsCompat
API 回溯移植以控制系统栏外观 - 更新了
ActivityCompat.recreate()
,使其可以在任何 API 级别上的任何生命周期状态安全调用 - 添加了 API 以通过
EditorInfoCompat
提供和检索初始周围文本,这允许 IME 应用避免额外的 IPC 延迟。 - 各种更新以提高与平台 SDK API 的兼容性
版本 1.5.0-rc02
2021 年 5 月 5 日
androidx.core:core:1.5.0-rc02
和 androidx.core:core-ktx:1.5.0-rc02
已发布。 1.5.0-rc02 版本包含这些提交。
Bug 修复
- 添加了对 SDK < 30 上的 setSystemBarsBehavior 的支持。( I062c8, b/173203649)
版本 1.5.0-rc01
2021 年 3 月 24 日
androidx.core:core:1.5.0-rc01
和 androidx.core:core-ktx:1.5.0-rc01
已发布。 1.5.0-rc01 版本包含这些提交。
摘要
- 与之前的 beta03 版本无变化
版本 1.5.0-beta03
2021 年 3 月 10 日
androidx.core:core:1.5.0-beta03
和 androidx.core:core-ktx:1.5.0-beta03
已发布。 1.5.0-beta03 版本包含这些提交。
API 更改
- 添加了 ExecutorCompat,它从 Handler 创建一个 Executor。(Ib4ca3,b/181237835)
版本 1.5.0-beta02
2021 年 2 月 24 日
androidx.core:core:1.5.0-beta02
和 androidx.core:core-ktx:1.5.0-beta02
已发布。 1.5.0-beta02 版本包含这些提交。
Bug 修复
- 废弃了
ModeCompat.isNative
,它已被DisplayCompat.getMode
替代。(Iefa71) NotificationCompat.MessagingStyle.getText()
曾被错误地标记为@NonNull
;现在它已是@Nullable
。(I05cb7)
版本 1.5.0-beta01
2021 年 1 月 13 日
androidx.core:core:1.5.0-beta01
和 androidx.core:core-ktx:1.5.0-beta01
已发布。 1.5.0-beta01 版本包含这些提交。
API 更改
- 遵循 Bounds Compat/平台互操作性的 API 指南。(I7da35)
- 在 AppCompatEditText 中使用 OnReceiveContentListener 集成了拖放(放置事件)。(Ib26c9,b/175343405)
- 将新的 Insets 动画 API 与平台实现连接。(I078da)
- 添加了新的 Insets 动画 API。(I8aebd)
- 更新了 OnReceiveContentListener 及相关 API
- 更新了 OnReceiveContentListener,使其可以通过 ViewCompat 设置到任何类型的视图上。
- 从
OnReceiveContentListener
中移除了getSupportedMimeTypes()
;现在 MIME 类型作为附加参数传递给设置侦听器的ViewCompat
方法。 - 将
OnReceiveContentListener.onReceiveContent()
的参数包装在一个对象中。 - 将 linkUri 作为参数添加到
onReceiveContent()
,以确保与键盘图像 API 的向后兼容性。 - 将 Bundle 参数添加到
onReceiveContent()
,以确保与键盘图像 API 的向后兼容性,并方便将来 API 的演进。 - 更新了
onReceiveContent()
,使其返回未使用的任何内容,作为委托给默认处理的一种方式。 - 从公共 API 中移除了
TextViewOnReceiveContentListener
,因为现在可以通过从侦听器返回任何未使用的内容来触发默认行为。 - (Ib4616,b/173814913)
- 废弃了
BuildCompat.isAtLeastR
。(Idb37e) - 将
widget.RichContentReceiverCompat
移至view.OnReceiveContentListener
。(Ifdab7,b/173814913) - 添加了
Preconditions.checkFlagsArgument
。(I43952,b/174181100) - 废弃了用于外发共享的自定义菜单。(I7cd92)
- 通知现在可以标记为未接电话。(I14d90)
- 添加了
PackageInfoCompat#getSignatures
用于检索软件包的证书数组。(I8e9a3,b/159831205)
Bug 修复
- 修复了一个错误,该错误导致在较新的操作系统版本上设置
BigPictureStyle.bigLargeIcon
会破坏该通知的BigPictureStyle
。(Ic623d)
外部贡献
- ShareCompat 现在使用构造函数进行创建,旧的工厂方法已被废弃。现在可以从 Context 创建构建器和读取器,不再需要 Activity。(I315b6,b/173043501)
- 使用 ShareCompat 共享流时设置剪贴数据并授予 URI 读取权限。(I4aa31,b/173137936)
版本 1.5.0-alpha05
2020 年 11 月 11 日
androidx.core:core:1.5.0-alpha05
和 androidx.core:core-ktx:1.5.0-alpha05
已发布。 1.5.0-alpha05 版本包含这些提交。
API 更改
- 添加了对新的 GnssStatus API 的支持。(Id8e22)
- 添加了
FileProvider#getUriForFile
的重载以支持自定义文件名。(Ie870b) - 将
WindowInsetsController
API 回溯移植以控制系统栏外观。(Ieb4ee) - 将带布尔值的
getFont
重命名为getCachedFont
。(Iea520) - 将 API 30 中添加的
#hide()
和#show()
方法从 WindowInsetsController API 回溯移植。(I21573) - 添加了新的 API
ResourcesCompat#getFont
,带 cacheOnly 选项。(Ic38cf) - 更新了适用于 Android 11 的 androidx 通知气泡 API。(Ib9c70)
版本 1.5.0-alpha04
2020 年 10 月 1 日
androidx.core:core:1.5.0-alpha04
和 androidx.core:core-ktx:1.5.0-alpha04
已发布。 1.5.0-alpha04 版本包含这些提交。
API 更改
- 修复了使用
NotificationCompat.Builder.<init>(Context,Notification)
时样式恢复不完整的问题。(Ib297a) - 新的通知类别类型现已可用。(I9521a)
Bug 修复
- 允许
ActivityCompat.recreate()
在任何 API 级别上的任何生命周期状态安全调用。(I62dde,b/160122826)
版本 1.5.0-alpha03
2020 年 9 月 16 日
androidx.core:core:1.5.0-alpha03
和 androidx.core:core-ktx:1.5.0-alpha03
已发布。 1.5.0-alpha03 版本包含这些提交。
API 更改
ViewCompat
是一个实用程序类,不应实例化。(If20fa)- 用于提供和检索初始周围文本的 API 已回溯移植到
EditorInfoCompat
。它们允许 IME 应用避免额外的 IPC 延迟。(Ie3809) - 使用兼容对象查询通知渠道和组。(I11d18)
Bug 修复
- 对于 P 之前的版本,确保窗格被标记为重要的可访问性元素并支持
CONTENT_CHANGE_TYPE_PANE_DISAPPEARED
事件。(Iaeffc)
外部贡献
- 已为 androidx 启用了 StaticFinalBuilder 的 API lint 检查。(I2b11b,b/138602561)
版本 1.5.0-alpha02
2020 年 8 月 19 日
androidx.core:core:1.5.0-alpha02
和 androidx.core:core-ktx:1.5.0-alpha02
已发布。 1.5.0-alpha02 版本包含这些提交。
新功能
WindowInsetsCompat
API 已更新为 Android 11 平台中的 API。这包括新的ime()
inset 类型,它允许检查屏幕键盘的可见性和大小。- 关于
ime()
类型的一些注意事项:当您的 Activity 使用adjustResize
窗口软输入模式时,它在 API 23+ 上运行非常可靠。如果您使用的是adjustPan
模式,它应该可以可靠地回溯到 API 14。
- 关于
API 更改
- 添加了
ObjectsCompat#toString(Object, String)
。它提供了Objects#toString(Object, String)
的行为,但可以在 API 19 之前使用。(I26cdc) - 添加了
NotificationCompat.Builder.recoverBuilder(Notification)
。(I6f100) - 添加了
NotificationCompat.Builder.createContentView()
和相关方法。(I6fe13) - 在 AccessibilityNodeInfoCompat 中添加了与额外数据相关的 API。(I19567)
- 添加了
NotificationCompat.Builder.setSettingsText
和NotificationCompat.MessagingStyle.addHistoricMessage
。(I62bb6) - 更新了通知文档。(I1293f)
- 修复了 NotificationCompat.Builder 的可空性问题。(I932e3)
- 添加了
NotificationChannelCompat
和NotificationChannelGroupCompat
。(Icc3b6) - 将
addExtraDataToAccessibilityNodeInfo
添加到AccessibilityNodeProviderCompat
。(I26575) - 将 WindowInsetsCompat 更新到 Android 11 API。(I3df9e)
外部贡献
- 为
MailTo
方法添加Uri
重载。(I6fa6b) - 添加了
MailTo
API,它为所有 API 级别提供了稳定行为和错误修复。(Ie9395,b/159827506)
版本 1.5.0-alpha01
2020 年 6 月 10 日
androidx.core:core:1.5.0-alpha01
和 androidx.core:core-ktx:1.5.0-alpha01
已发布。
新功能
- 为
ShortcutManager
、ShortcutInfo
、AccessibilityNodeInfo
、DisplayCutout
、GnssStatus
和Notification
类提供了与 Android R 平台 SDK API 的兼容性
Bug 修复
- 明确建议检查 shouldShowPermissionRationale。
- 将 AtomicFile 更改为使用就地重命名。
- 根据给定字体的样式调整 Typeface 显示样式。(b/156853883)
- 修复失败的通知构建器测试
- 修复
LocationManagerCompat
中的注册/注销错误。
Core 和 Core-ktx 版本 1.4.0
版本 1.4.0-alpha01
2020 年 5 月 20 日
androidx.core:core:1.4.0-alpha01
和 androidx.core:core-ktx:1.4.0-alpha01
已发布。 1.4.0-alpha01 版本包含这些提交。
API 更改
- 添加了用于插入富媒体内容(例如粘贴图像)的通用 API。新的回调提供了一个统一的 API,应用可以通过它支持以不同方式插入富媒体内容。目前,该 API 仅添加到
AppCompatEditText
,并将为以下代码路径调用:- 从剪贴板粘贴
- 从 IME 插入内容(
InputConnection.commitContent
)(I22bf7)
- 将
android.os.Process.isApplicationUid(int)
回溯移植,以帮助应用确定代码是否在隔离进程中执行。(I4c83a,b/153014822) - 将
LocusId
回溯移植,以帮助应用关联不同子系统(例如内容捕获、快捷方式和通知)之间的状态。(Ia3129) - 向 ViewGroup 添加了祖先序列。(I5f75c,b/117976097)
Bug 修复
- 为
ActivityCompat.requestPermissions()
添加了权限验证。(I372cc,b/122163323) - 将 v28+ 调用提取到单独的静态类中,这解决了构建应用包时
View#OnUnhandledKeyEventListener
的NoClassDefFoundError
错误。(Id3419,b/153695093) - 修复了
setChronometerCountDown
崩溃错误。(I47282,b/145770610)
Core 和 Core-ktx 版本 1.3.2
版本 1.3.2
2020 年 10 月 1 日
androidx.core:core:1.3.2
和 androidx.core:core-ktx:1.3.2
已发布。 1.3.2 版本包含这些提交。
Bug 修复
- 允许
ActivityCompat.recreate()
在任何 API 级别上的任何生命周期状态安全调用。(I62dde,b/160122826)
Core 和 Core-ktx 版本 1.3.1
版本 1.3.1
2020 年 7 月 22 日
androidx.core:core:1.3.1
和 androidx.core:core-ktx:1.3.1
已发布。 1.3.1 版本包含这些提交。
Bug 修复
- 修复了在 API 级别 29 上,解析的字体资源
Typeface
粗细和样式值错误的问题。(b/156853883)
Core 和 Core-ktx 版本 1.3.0
版本 1.3.0
2020 年 5 月 27 日
androidx.core:core:1.3.0
和 androidx.core:core-ktx:1.3.0
已发布。 1.3.0 版本包含这些提交。
自 1.2.0 以来的主要变更
- 在
NestedScrollView
上新增 API,可运行指定持续时间的平滑滚动 - 在
ViewCompat
上新增 API,可检索分派到视图层次结构的原始窗口边衬区
版本 1.3.0-rc01
2020 年 4 月 15 日
androidx.core:core:1.3.0-rc01
和 androidx.core:core-ktx:1.3.0-rc01
已发布。 1.3.0-rc01 版本包含这些提交。
Bug 修复
WindowInsetsCompat
现在在所有受支持的 API 级别上正确实现了hashCode()
和equals()
。
版本 1.3.0-beta01
2020 年 4 月 1 日
androidx.core:core:1.3.0-beta01
和 androidx.core:core-ktx:1.3.0-beta01
已发布。 1.3.0-beta01 版本包含这些提交。
版本 1.3.0-alpha02
2020 年 3 月 4 日
androidx.core:core:1.3.0-alpha02
和 androidx.core:core-ktx:1.3.0-alpha02
已发布。 1.3.0-alpha02 版本包含这些提交。
API 更改
- 在
NestedScrollView
上新增 API,可运行指定持续时间的平滑滚动 - 一个新的
ViewCompat
API,用于检索分派到视图层次结构的原始窗口边衬区
版本 1.3.0-alpha01
2020 年 1 月 29 日
androidx.core:core:1.3.0-alpha01
和 androidx.core:core-ktx:1.3.0-alpha01
已发布。 1.3.0-alpha01 版本包含这些提交。
新功能
- 添加了
ContentProviderCompat
- 添加了
WindowInsetsCompat.Builder
API 变更
- 添加了
NotificationCompat
API,可静音通知实例 - 添加了
ResourcesCompat.NULL_ID
- 废弃了
NotificationCompat
中的CarExtender.UnreadConversation
- 添加了
DisplayCompat
API,用于获取设备的物理尺寸
错误修复
- 改进了
NotificationCompat
中没有图标的操作处理 - 修复了 API 级别 23 上 TextView 相对于复合 Drawable 的 Drawable 着色问题。(aosp/1172194)
- 确保基本上下文始终是包装器
- 修复了 RecyclerView 默认情况下不应填充 Collection[Item]Info 的问题
版本 1.2.0
版本 1.2.0
2020 年 2 月 5 日
androidx.core:core:1.2.0
和 androidx.core:core-ktx:1.2.0
已发布。 1.2.0 版本包含这些提交。
自 1.1.0 以来的主要变更
- 在
NotificationCompat
中添加了新 API 和错误修复 - 添加了新 API,以向后兼容的方式处理 AndroidQ 中引入的
BlendMode
- 在无障碍功能兼容性中添加了新 API 和错误修复
- 添加了新 API,以处理
ShortcutInfo
- 添加了新 API,以处理
WindowInsets
- 修复了
EditorInfoCompat
、ShareCompat
、WakefulBroadcastReceiver
和InputConnectionCompat
中 28.0(支持库)和 1.1(AndroidX)之间 bundle 键字符串的向后兼容性问题
版本 1.2.0-rc01
2019 年 11 月 20 日
androidx.core:core:1.2.0-rc01
和 androidx.core:core-ktx:1.2.0-rc01
已发布,自 1.2.0-beta02
以来没有变化。 1.2.0-rc01 版本包含这些提交。
版本 1.2.0-beta02
2019 年 11 月 7 日
androidx.core:core:1.2.0-beta02
和 androidx.core:core:1.2.0-beta02
已发布。 1.2.0-beta02 版本包含这些提交。
错误修复
- 更新了 en-rCA 和 en-rXC 语言区域的翻译。
版本 1.2.0-beta01
2019 年 10 月 9 日
androidx.core:core:1.2.0-beta01
和 androidx.core:core-ktx:1.2.0-beta01
已发布。 1.2.0-beta01 版本包含这些提交。
API 更改
- 添加了使用 IconCompat 创建 NotificationCompat Actions 的支持,并废弃了使用资源 ID 表示 Actions 图标的公共字段(及其 getter)。(aosp/1119192)
- 为 long 类型添加
MathUtils.clamp
。(aosp/1117300) - 将
setChronometerCountDown
添加到NotificationCompat
。(b/138601213)
Bug 修复
- 修复了地址检测中对 Unicode 数字处理的问题。(aosp/1129852)
外部贡献
- 感谢 Sergey Zakharov 在 AndroidX 中启用了针对 MissingBuild 和 ListenerLast 的 API Lint 检查!(aosp/1119191,aosp/1126768)
版本 1.2.0-alpha04
2019 年 9 月 5 日
androidx.core:core:1.2.0-alpha04
和 androidx.core:core-ktx:1.2.0-alpha04
已发布。此版本中包含的提交可在此处找到。
API 变更
- 废弃了
ShortcutInfoCompat.Builder#setLongLived()
并将其替换为同名的新 API,该 API 接受布尔值作为参数,以匹配 Android 框架中ShortcutInfo.Builder
的类似 API。 - 添加了
ShortcutInfoCompat.Builder#setRank()
和ShortcutInfoCompat#getRank()
以匹配 Android 框架中的ShortcutInfo
。
错误修复
- 嵌套预滚动不再在手势超出触摸容差之前执行(b/139530818,aosp/1105373)。这有利于 ViewPager2 和其他库。
版本 1.2.0-alpha03
2019 年 8 月 7 日
androidx.core:core:1.2.0-alpha03
和 androidx.core:core-ktx:1.2.0-alpha03
已发布。此版本中包含的提交可在此处找到。
新功能
- 添加了
UriCompat.toSafeString(Uri)
以提供可独立于平台更新的 URI 转义功能。(b/130878326) - 添加了 `Predicate<T>` 接口,用于提供 Java 8 风格的谓词,而无需 Java 8 语言特性。
API 变更
- 将
removeDynamicShortuct()
设为静态(b/134993204) - 为 BlendMode Color Filter 创建了工厂方法(b/135943149)
- 将
async
、counter
和isEnabled
添加到TraceCompat
(aosp/987332) - 公开了
WindowInsetsCompat
和ViewDragHelper
中的 API(aosp/979408)
错误修复
- 修复了
NestedScrollView
响应无障碍滚动调用时滚动的问题。(aosp/971000) - 在
ViewCompat
实现中改用SimpleArrayMap
(aosp/1012534) - 修复了 FingerprintManager 在 API Level 23 上错误检查 PackageManager 的问题(b/124066957)
版本 1.2.0-alpha02
2019 年 6 月 13 日
androidx.core:core:1.2.0-alpha02
和 androidx.core:core-ktx:1.2.0-alpha02
已发布。此版本中包含的提交可在此处找到。
API 变更
- 添加了 WindowInsetsCompat.wrap() 和 unwrap(),以便能够包装和解包 WindowInsets 实例
版本 1.2.0-alpha01
2019 年 5 月 7 日,androidx.core:core:1.2.0-alpha01
和 androidx.core:core-ktx:1.2.0-alpha01
已发布。
新功能
- 添加
ACTION_PAGE_UP/DOWN/NEXT/PREVIOUS
无障碍操作 - 将
CATEGORY_NOTIFICATION
添加到 NotificationCompat - 添加对上下文通知操作的支持
- 在 NotificationCompat 中添加对气泡的支持
- 添加了 BlendModeCompat API,以利用 Android 10 上的 BlendMode API,并在可能的情况下回退到
PorterDuff.Mode
等效项 - 向 WindowInsetsCompat 和 ViewCompat 添加新的 getter 方法
- 添加对通知中轻触编辑的支持
- DrawerLayout 系统手势排除区域
- 添加 NotificationCompat API,用于控制是否允许系统生成的上下文操作
- 处理 NavUtils 中禁用的
<activity-alias>
组件 - 添加
AccessibilityNodeInfoCompat.setEntryKey
错误修复
- 修复 TypefaceCompat 中加载字体时抛出异常的问题
- 各种 DayNight 修复
- 修复 EditorInfoCompat、ShareCompat、
WakefulBroadcastReceiver
和InputConnectionCompat
中 28.0(支持库)与 1.1(AndroidX)版本之间捆绑包键字符串的向后兼容性问题
版本 1.1.0
版本 1.1.0
2019 年 9 月 5 日
androidx.core:core:1.1.0
和 androidx.core:core-ktx:1.1.0
已发布。此版本中包含的提交可在此处找到。
自 1.0.0 版以来的重要变更
- 更新了无障碍 API,以匹配 Android 10 平台的无障碍 API
- 改进了嵌套滚动;请参阅
NestedScrollingChild3
和NestedScrollingParent3
。 - 此库不再将
androidx.collection
依赖项作为其 API 的一部分公开。如果您通过对 Core 的依赖项隐式依赖于androidx.collection
类型,则需要向您的库或应用添加显式的androidx.collection
依赖项。此更改与源代码不兼容,但保留二进制兼容性。Collection 依赖项仍然是 Core 的传递依赖项,但作为实现细节而非其 API 的一部分。 - 解决了因重构到 androidx 引起的 IPC 兼容性问题(aosp/948725,aosp/938269)
- 为 AppCompat DayNight 添加了各种修复(aosp/942956)
版本 1.1.0-rc03
2019 年 8 月 7 日
androidx.core:core:1.1.0-rc03
和 androidx.core:core-ktx:1.1.0-rc03
已发布。此版本中包含的提交可在此处找到。
错误修复
- 使隐藏的
androidx.core.app.ComponentActivity
实现LifecycleOwner
,以保持与androidx.fragment:fragment:1.0.0
的二进制兼容性(aosp/1094409)
版本 1.1.0-rc02
2019 年 7 月 2 日
androidx.core:core:1.1.0-rc02
和 androidx.core:core-ktx:1.1.0-rc02
已发布。此版本中包含的提交可在此处找到。
错误修复
- API Level 23 上的
FingerprintManagerCompat#getFingerprintManagerOrNull
不应检查PackageManager
(b/124066957)(aosp/987433) - 修复 AccessibilityNodeInfoCompat 中的相等性比较问题(aosp/985736)
版本 1.1.0-rc01
2019 年 6 月 5 日
androidx.core:core:1.1.0-rc01
和 androidx.core:core-ktx:1.1.0-rc01
已发布。此版本中包含的提交可在此处找到。
错误修复
- 使图像键盘 API 向后兼容所有以前的实现(aosp/968220)
- 从 androidx.core:core 库依赖项中移除 Guava ListenableFuture(b/133171974,aosp/965393)
- 修复嵌套滚动时滑动速度不正确的问题。(aosp/961642)
- 为可变
TransitionDrawable
添加测试(b/37033322)
版本 1.1.0-beta01
2019 年 5 月 7 日
androidx.core:core:1.1.0-beta01
和 androidx.core:core-ktx:1.1.0-beta01
已发布。此版本中包含的提交可在此处找到。
AndroidX 的初始版本破坏了用于进程间通信、在捆绑包中发送带键数据的 Support Library compat
API 的向后兼容性。此版本修复了这一兼容性问题,恢复了使用 Support Library 28.0(或更早版本)构建的代码与 AndroidX 1.1(或更高版本)之间的通信。
API 变更
- 取消废弃能力设置器(aosp/937281)
RemoteActionCompat
现在是1VersionedParcelable
(aosp/928534)
错误修复
- 核心测试中的 AppCompatTextView 应使用 appcompat 主题创建(aosp/951636)
- InputConnectionCompat 使用 1.0 版之前的字符串值(aosp/948725)
- 使用 pre-AndroidX 字符串作为捆绑键的后备互操作(aosp/938269)
- 修复了 DayNight 在后台更新时的错误(aosp/942956)
- 在 AOSP 键盘中为无障碍服务实现了文本输入键 API(aosp/943897)
- 修复了在 API Level 20 及更低版本的设备上加载字体时抛出异常的问题
- 处理 NavUtils 中禁用的
<activity-alias>
组件(aosp/940788)
版本 1.1.0-alpha05
2019 年 3 月 13 日
androidx.core:core:1.1.0-alpha05
和 androidx.core:core-ktx:1.1.0-alpha05
已发布。此版本中包含的完整提交列表可在此处找到。
新功能
- 新的
ActivityCompat.recreate()
API,用于解决 pre-28 平台错误(aosp/898940) - 新的
LocationManagerCompat
类(aosp/894736)
API 变更
- 此库不再将“collection”依赖项作为其 API 的一部分公开。如果您通过对“core”的依赖项隐式依赖于“collection”类型,则需要向您的库或应用添加显式的“collection”依赖项。此更改与源代码不兼容,但保留二进制兼容性。“collection”依赖项仍然是“core”的传递依赖项,但作为实现细节而非其 API 的一部分。
错误修复
- 修复了在运行 API level 21 的设备上
ImageView
默认着色模式的错误
版本 1.1.0-alpha04
2019 年 1 月 30 日
androidx.core:core 1.1.0-alpha04
和 androidx.core:core-ktx 1.1.0-alpha04
已发布。
API 变更
- 将
EXTRA_SHORTCUT_ID
的值更改为与平台一致(aosp/877712) - 将
CATEGORY_NOTIFICATION
添加到NotificationCompat
(aosp/861067)
错误修复
- 修复了 fontFamily 在 API level 24 及更低版本的设备上无法工作的问题(aosp/807054)
- 修复了替换无障碍操作和添加无障碍操作时未移除旧无障碍操作的错误(aosp/848314)
版本 1.1.0-alpha03
2018 年 12 月 17 日
androidx.core 1.1.0-alpha03
和 androidx.core-ktx 1.1.0-alpha03
已发布,并包含以下更改。androidx.core-ktx 1.1.0-alpha02
的发布是为了与 androidx.core 1.1.0-alpha02
提供 ktx 匹配。
新功能
- 将通知渠道方法添加到
NotificationManagerCompat
,以便开发者在处理通知时可以仅使用NotificationManagerCompat
。特别感谢 Zdeněk Kořán 提供的这项新功能!
API 变更
- 向
ShortcutManagerCompat
添加了新 API,用于发布和更新动态快捷方式。
版本 1.1.0-alpha01
2018 年 11 月 5 日
androidx.core 1.1.0-alpha01
已发布,包含以下 API 变更和错误修复。
新功能和 API 变更
- NestedScrollingChild3 和 NestedScrollingParent3 为重载的 dispatchNestedScroll 和 onNestedScroll 方法添加了“consumed”参数,以便驱动嵌套滚动的视图可以更好地了解在每次嵌套滚动过程中父级消耗了多少滚动距离。
- NestedScrollView 现在实现了 NestedScrollingChild3 和 NestedScrollingParent3,因此,NestedScrollingChild2 和 NestedScrollingParent2 的 dispatchNestedScroll 和 onNestedScroll 实现不保证被调用。依赖其中任何一个被调用的开发者也应该重写新的嵌套滚动 3 版本的 dispatchNestedScroll 和 onNestedScroll。
- ShortcutInfoCompat 具有以下新字段:Persons、categories 和 isLongLived。此举是为了表明它可接受各种类型的内容。
- 将 SupportActivity 重命名为 ComponentActivity。有关更多信息,请参阅 androidx.activity。
- 添加了 getMainExecutor() 方法,该方法返回一个 Executor 链接,它将在与该上下文关联的主线程上运行排队任务。
- 添加了 Resources.getFloat 的兼容性实现。
- 将 Results Source 添加到兼容的 RemoteInput。这允许应用区分直接回复和智能回复,用于日志记录目的。
- 为 TextView TextWatcher 操作添加了 Kotlin 扩展函数。
- 废弃了 AccessibilityNodeInfo 能力和标志设置器;改用操作。
- 将 AccessibilityPane 添加到 ViewCompat。
- 通过添加 AccessibilityClickableSpanCompat,在 pre-O 设备上公开了 ClickableSpans。
- 废弃了
AccessibilityNodeInfoCompat.setFocusable()
、setClickable()
、setLongClickable()
、setScrollable()
和setContextClickable()
。改用AccessibilityAction
。 - 添加了
ViewCompat.setAccessibilityPaneTitle()
、getAccessibilityPaneTitle()
、setScreenReaderFocusable()
、isScreenReaderFocusable()
、setAccessibilityHeading()
和isAccessibilityHeading()
,以便通过 API 19 向后移植此View
无障碍功能。 - 添加了
ViewCompat.enableAccessibleClickableSpanSupport()
,允许开发者通过 API 19 使非 URLClickableSpan
具有无障碍功能。
错误修复
- 修复了使用可下载字体时,
ResourcesCompat.getFont()
在网络故障时崩溃的问题。 - 修复了 TypefaceCompatApi21 中当
ContentResolver
返回 null 时发生的空指针异常。 - 修复了 Array Utils 中的类型错误,该错误在预期 ColorStateList 时获取了原始颜色。
Core-Animation 和 Core-Animation-Testing 1.0.0
1.0.0 版
2024 年 5 月 1 日
androidx.core:core-animation:1.0.0
和 androidx.core:core-animation-testing:1.0.0
已发布。版本 1.0.0 包含这些提交。
1.0.0 的主要功能
androidx.core:core-animation
是 Animator API 的回溯移植,包含了自 API Level 14 以来添加到平台的所有功能。其中一些值得注意的功能是
ValueAnimator#pause
、ValueAnimator#resume
(API Level 19)ObjectAnimator.ofMultiInt
、ObjectAnimator.ofMultiFloat
(API Level 21)ValueAnimator#setCurrentFraction
(API Level 22)AnimatorSet#setCurrentPlayTime
(API Level 26)androidx.core:core-animation-testing
允许开发者以确定性方式测试动画。有关详细信息,请参阅AnimatorTestRule
。
1.0.0-rc01 版
2023 年 7 月 26 日
androidx.core:core-animation:1.0.0-rc01
、androidx.core:core-animation-testing:1.0.0-rc01
和 androidx.core:core-remoteviews:1.0.0-rc01
已发布。版本 1.0.0-rc01 包含这些提交。
新功能
RemoteViews
在 beta 阶段稳定后已移至 rc01。
1.0.0-beta01 版
2022 年 4 月 20 日
androidx.core:core-animation:1.0.0-beta01
已发布,自 1.0.0-alpha02 以来没有变化。版本 1.0.0-beta01 包含这些提交。
Core-Animation Core-Animation-Testing 版本 1.0.0-alpha02
2020 年 8 月 19 日
androidx.core:core-animation:1.0.0-alpha02
和 androidx.core:core-animation-testing:1.0.0-alpha02
已发布。版本 1.0.0-alpha02 包含这些提交。
Bug 修复
- 修复了 AnimatorSet 在单个属性上使用多个 Animator 的问题。(aosp/1351310)
Core-Animation 版本 1.0.0-alpha01
2020 年 4 月 15 日
androidx.core:core-animation:1.0.0-alpha01
和 androidx.core:core-animation-testing:1.0.0-alpha01
已发布。版本 1.0.0-alpha01 包含这些提交。
新功能
androidx.core:core-animation
是 Animator API 的回溯移植,包含了自 API Level 14 以来添加到平台的所有功能。其中一些值得注意的功能是
ValueAnimator#pause
、ValueAnimator#resume
(API Level 19)ObjectAnimator.ofMultiInt
、ObjectAnimator.ofMultiFloat
(API Level 21)ValueAnimator#setCurrentFraction
(API Level 22)AnimatorSet#setCurrentPlayTime
(API Level 26)androidx.core:core-animation-testing
允许开发者以确定性方式测试动画。有关详细信息,请参阅AnimatorTestRule。
Core-Role 版本 1.1.0
版本 1.1.0
2025 年 3 月 12 日
androidx.core:core-role:1.1.0
已发布。版本 1.1.0 包含这些提交。
版本 1.1.0-rc01
2021 年 12 月 15 日
androidx.core:core-role:1.1.0-rc01
已发布,自 1.1.0-alpha01
以来没有变化。版本 1.1.0-rc01 包含这些提交。
Core-Role 版本 1.1.0-alpha01
2020 年 4 月 15 日
androidx.core:core-role:1.1.0-alpha01
已发布。版本 1.1.0-alpha01 包含这些提交。
API 更改
- 添加了系统图库的角色名称。
Core-Role 版本 1.0.0
1.0.0 版
2021 年 2 月 10 日
androidx.core:core-role:1.0.0
已发布。版本 1.0.0 包含这些提交。
1.0.0 的主要功能
- 添加了
RoleManagerCompat
,其中包含系统中可能可用的角色的名称和文档。
Core-Role 版本 1.0.0-rc01
2020 年 4 月 15 日
androidx.core:core-role:1.0.0-rc01
已发布,自 1.0.0-beta01
以来没有变化。版本 1.0.0-rc01 包含这些提交。
Core-Role 版本 1.0.0-beta01
2019 年 11 月 20 日
androidx.core:core:1.0.0-beta01
已发布,自 1.0.0-alpha01
以来没有变化。版本 1.0.0-beta01 包含这些提交。
Core-Role 版本 1.0.0-alpha01
2019 年 7 月 2 日
androidx.core:core-role:1.0.0-alpha01
已发布。这是 androidx.core:core-role
的首次发布。此初始版本中包含的提交可在此处找到。
新功能
- 添加了
RoleManagerCompat
,其中包含系统中可能可用的角色的名称和文档。
版本 1.0.2
版本 1.0.2
2019 年 5 月 7 日
androidx.core:core:1.0.2
和 androidx.core:core-ktx:1.0.2
已发布。此版本包含 2 次提交。
AndroidX 的初始版本破坏了用于进程间通信、在捆绑包中发送带键数据的 Support Library compat
API 的向后兼容性。此版本修复了这一兼容性问题,恢复了使用 Support Library 28.0(或更早版本)构建的代码与 AndroidX 1.1(或更高版本)之间的通信。
错误修复
- InputConnectionCompat 使用 1.0 版之前的字符串值(aosp/948725)
- 使用 pre-AndroidX 字符串作为捆绑键的后备互操作(aosp/938269)
版本 1.0.1
版本 1.0.1
2018 年 11 月 7 日
core-1.0.1
和 appcompat-1.0.2
的错误修复版本。
错误修复
- 修复了
PrecomputedTextCompat
在与 RTLAppCompatTextView
一起使用时崩溃的问题。b/113070424
Core-Ktx 版本 1.0.1
2018 年 11 月 5 日
androidx.core-ktx 1.0.1
已发布,包含以下错误修复
- 修复了 union 和 intersection 的实现互换的错误。