Core
androidx.core.animation
androidx.core.app
androidx.core.content
androidx.core.role
androidx.core.view
(查看所有核心软件包的参考文档)
此表列出了 androidx.core 组中的所有工件。
| 工件 | 稳定版本 | 版本候选版 (RC) | Beta 版本 | Alpha 版本 |
|---|---|---|---|---|
| core | 1.19.0 | - | - | - |
| core-animation | 1.0.0 | - | - | - |
| core-google-shortcuts | 1.1.0 | - | - | 1.2.0-alpha01 |
| core-performance | 1.0.0 | - | - | - |
| core-remoteviews | 1.1.0 | - | - | - |
| core-role | 1.1.0 | - | - | - |
| core-splashscreen | 1.2.0 | - | - | - |
声明依赖项
要添加对 Core 的依赖,您必须将 Google Maven 代码库添加到您的项目中。请阅读 Google 的 Maven 代码库以了解更多信息。
在应用或模块的 build.gradle 文件中,为您需要的工件添加依赖项
Groovy
dependencies { def core_version = "1.19.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" }
Kotlin
dependencies { val core_version = "1.19.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") }
有关依赖项的详细信息,请参阅添加构建依赖项。
反馈
您的反馈有助于我们改进 Jetpack。如果您发现了新问题或有改进此库的想法,请告诉我们。在创建新问题之前,请先查看此库中的现有问题。您可以通过点击星标按钮为现有问题投票。
如需了解详情,请参阅 问题跟踪器文档。
Core 和 Core-ktx
版本 1.19
版本 1.19.0
2026 年 6 月 3 日
androidx.core:core:1.19.0、androidx.core:core-ktx:1.19.0 和 androidx.core:core-testing:1.19.0 已发布。版本 1.19.0 包含这些提交。
自 1.18.0 以来的重要变更
版本 1.19.0-rc01
2026 年 5 月 19 日
androidx.core:core:1.19.0-rc01、androidx.core:core-ktx:1.19.0-rc01 和 androidx.core:core-testing:1.19.0-rc01 已发布。版本 1.19.0-rc01 包含这些提交。
版本 1.19.0-alpha02
2026 年 5 月 6 日
androidx.core:core:1.19.0-alpha02、androidx.core:core-ktx:1.19.0-alpha02 和 androidx.core:core-testing:1.19.0-alpha02 已发布。版本 1.19.0-alpha02 包含这些提交。
API 变更
- 弃用
BuildCompat.isAtLeastB*。调用方应直接检查SDK_INT(_FULL)(I09666, b/505015815)
Bug 修复
- 修复了 Android 17 (SDK 37) 上
CallSessionTest中的测试失败问题,方法是在不受影响的平台版本上禁止运行特定于版本的错误缓解测试。(I970a7, b/502732317) - 修复了 Android 14-16 上音频通话在开始时可能会意外路由到扬声器的问题 (Ic7000, b/491932378)
- 修复了
core-telecom中的一个崩溃问题 (IllegalStateException),如果电信框架或远程服务在扩展设置期间多次调度连接事件,可能会发生此崩溃。(I00f82, b/476724351) - 当
BLUETOOTH_CONNECT权限被拒绝时,Telecom 现在将使用后备启发式方法来识别用于音频路由决策的可穿戴设备。(Iec271, b/499302063)
外部贡献
- 添加
TextAttributeCompat作为TextAttribute的向后兼容变体。(Ib4a46, b/460301602)
版本 1.19.0-alpha01
2026 年 4 月 8 日
androidx.core:core:1.19.0-alpha01、androidx.core:core-ktx:1.19.0-alpha01 和 androidx.core:core-testing:1.19.0-alpha01 已发布。版本 1.19.0-alpha01 包含这些提交。
重要变更
- core-ktx API 已合并到核心库中。所有 Kotlin 扩展现在都是主核心工件的一部分。core-ktx 现在是一个空的工件,仅供兼容性使用。(I6adbe)
API 变更
- 添加获取和设置数学信息的新 API (Ib5ad3, b/394599312)
- 添加变体设置以自定义可下载的可变字体 (Ifdc93, b/223262013)
- 为
AccessibilityNodeInfoCompat.SelectionCompat添加了unwrap(),用于检索底层平台AccessibilityNodeInfo.Selection对象。(I3078a, b/479902413) - 为
AccessibilityNodeInfoCompat.SelectionPositionCompat添加了getView()和getVirtualDescendantId()。(Ib0c48, b/362783892) - 更正了 AndroidX 中的
ACTION_ARGUMENT_SELECTION_PARCELABLE定义,使其与框架 SDK 中的定义一致,从而拥有单一的动作字面量。(Ib40af, b/479852824) - 向
NotificationCompat添加EXTRA_PREFER_SMALL_ICON键常量 (I713c9, b/469460575, b/478869887) - 在
NotificationCompat中添加对MetricStyle、语义样式和相关 API 的支持。(I6c194, b/445685015, b/446155056, b/446157356, b/467924497) - 使用 @ChecksSdkIntAtLeast 标注
BuildCompat.isAtLeastB_1(I18a28, b/462789273)
Bug 修复
- 修复了
AccessibilityNodeInfoCompat.SelectionPositionCompat和AccessibilityNodeInfoCompat.SelectionCompat中的equals()方法行为,以正确评估相等性。(Icbe1d, b/495537199)
版本 1.18
版本 1.18.0
2026 年 3 月 11 日
androidx.core:core:1.18.0、androidx.core:core-ktx:1.18.0 和 androidx.core:core-testing:1.18.0 已发布。版本 1.18.0 包含这些提交。
自 1.17.0 以来的重要变更
compileSdk从 API 36 更改为 API 36.1- 添加了
NotificationCompat.ProjectedExtender以支持投影设备上的通知。 - 添加了
PictureInPictureUiStateCompat以帮助处理画中画功能的 API 差异 - 添加了
AccessibilityNodeInfoCompat.SelectionCompat以帮助处理运行 API 36.1 的设备上的辅助功能选择
版本 1.18.0-rc01
2026 年 2 月 11 日
androidx.core:core:1.18.0-rc01、androidx.core:core-ktx:1.18.0-rc01 和 androidx.core:core-testing:1.18.0-rc01 已发布。版本 1.18.0-rc01 包含这些提交。
API 变更
- 删除
onViewBoundsChangedAPI (Ie56d0, b/475328144) - 添加
BasicPictureInPicture和VideoPlaybackPictureInPicture类用于典型的画中画用法 (I7f989, b/475328144)
Bug 修复
- 添加
ViewBoundsTracker类,用于持续跟踪视图边界,以便在PictureInPictureParamsCompat中设置sourceRectHint(Id203a, b/474454111)
版本 1.18.0-alpha01
2026 年 1 月 14 日
androidx.core:core:1.18.0-alpha01、androidx.core:core-ktx:1.18.0-alpha01 和 androidx.core:core-testing:1.18.0-alpha01 已发布。版本 1.18.0-alpha01 包含这些提交。
API 变更
- 添加对
WindowInsetsCompat中getBoundingRects的支持 (I24f18) onCanUserUpdateSilence现在是可选的 (Ibb0c2)- 扩展
PictureInPictureProvider接口,使其也包含OnUserLeaveHintProvider(I3125b, b/462178249) - 弃用
PermissionsDelegateCompat.onActivityResult,该方法不再被FragmentActivity调用。(I59197, b/460267600) - 将画中画功能从
ComponentActivity抽象为专门的PictureInPictureProvider接口 (I068a3, b/462178249) - 添加 API 以通知表面是否应显示麦克风 (I55acf, b/445237449)
- 添加
DisplayShapeCompatAPI (I490d4, b/410851992) - 引入
PictureInPictureParamsCompat以包装框架android.app.PictureInPictureParams类。(I8af9e, b/458803858) - 添加对
IntentSender的支持到 androidx-main am: 127eef7acc am: b4b1111b77 (I5b30b) - 添加对
IntentSender的支持到 androidx-main am: 127eef7acc (I849b9) - 添加对
IntentSender的支持到 androidx-main - 添加对
IntentSender的支持 (Ia998d, b/445163724) - 添加获取和设置选择的新 API (I05ec4, b/362784540)
- 添加已知问题 452390376:在 Pixel 10 设备上,无法为视频通话等流式应用场景启用自动曝光模式低光增强 (LLB)。(Iba480, b/452390376)
- 添加获取和设置排序方向的新 API (I658de, b/394670064)
- 为
CallControlScope添加了用于视频通话管理的新 API:getVideoState()用于观察音频/视频状态,requestVideoState(int)用于请求更改视频状态。(I51065, b/333074774) - 添加缺失的
AccessibilityNodeInfoCompat选中状态常量。(I40b4c) - 修复缺失
AccessibilityNodeInfoCompat展开状态 intdef 的错误。(I75106, b/435252704) BuildCompat.isAtLeastB1:删除@RequiresApi(I42fe2, b/430210979)- 修复缺失
AccessibilityNodeInfoCompat展开状态常量的错误。(I1b1cd, b/435252704) CallsManager.registerAppWithTelecom现在包含一个新的可选backwardsCompatSdkLevel参数。这使开发人员能够控制使用哪个底层平台实现(旧版ConnectionService与现代事务性 API)。该值默认为 33,确保在 SDK 34+ 上默认使用现代 API,但可以设置更高的值以在特定的 SDK 范围内强制使用旧版路径。(Ib9571, b/444266242)- 添加了
CallAttributesCompat.isLogExcluded,以允许指定通话是否应从通话记录中排除 (Ia2a3a, b/447166999) - 添加缺失的内容更改类型。(I52a3c)
- 添加
BuildCompat.isAtLeastB1,用于检查 Baklava 次要版本 1 (SDK 36.1) 中添加的 API 是否可用。(I78513, b/430210979) - 引入新 API
RangingResultFailure以报告测距会话失败和原因,测距启动失败也将使用之前通过RangingResultPeerDisconnected报告的RangingResultFailure回调 - 引入新 API
RangingResultFailure以报告测距会话失败和原因,测距启动失败也将使用之前通过RangingResultPeerDisconnected报告的RangingResultFailure回调 (If3715) - 弃用了
bundleOf(...)扩展函数,该函数不提供编译时类型安全,并可能导致运行时崩溃。请改用Bundle方法。(I48af2, b/434825212)
Bug 修复
- 将 Pixel Dec 版本添加到 KI_398591036 中的已修复构建指纹列表中 (I65f51, b/398591036)
- 将 Pixel Nov 版本添加到 KI_398591036 中的已修复构建指纹列表中 (I60c10, b/398591036)
- 将 Pixel Oct 版本添加到 KI_398591036 中的已修复构建指纹列表中 (I6438c, b/398591036)
- 从
FingerprintManagerCompat中移除了对FingerprintManager类的引用,并更新所有方法以返回 false 或执行无操作。(I0360b, b/330524057) - 修复 KI_452390376 文档中的代码链接 (I9a554, b/454020407)
- 标记特定的 Pixel 构建为已修复。(I4c751, b/398591036)
- 添加对为
KnownIssue指定手动测试构建指纹列表的支持。(Iea9f9, b/453691379)
版本 1.17
版本 1.17.0
2025 年 8 月 13 日
androidx.core:core:1.17.0、androidx.core:core-ktx:1.17.0 和 androidx.core:core-testing:1.17.0 已发布。版本 1.17.0 包含这些提交。
自 1.16.0 以来的重要变更
- 核心库已更新为以 Kotlin 2.0 语言级别为目标,并要求使用 Kotlin Gradle 插件 2.0.0 或更高版本。
版本 1.17.0-rc01
2025 年 7 月 30 日
androidx.core:core:1.17.0-rc01、androidx.core:core-ktx:1.17.0-rc01 和 androidx.core:core-testing:1.17.0-rc01 已发布。版本 1.17.0-rc01 自上一个 Beta 版本以来没有任何更改。(无更改)
版本 1.17.0-beta01
2025 年 7 月 2 日
androidx.core:core:1.17.0-beta01、androidx.core:core-ktx:1.17.0-beta01 和 androidx.core:core-testing:1.17.0-beta01 已发布。版本 1.17.0-beta01 自上一个 Alpha 版本以来没有任何更改。(无更改)
版本 1.17.0-alpha01
2025 年 6 月 18 日
androidx.core:core:1.17.0-alpha01、androidx.core:core-ktx:1.17.0-alpha01 和 androidx.core:core-testing:1.17.0-alpha01 已发布。版本 1.17.0-alpha01 包含这些提交。
新功能
- 核心库已更新为以 Kotlin 2.0 语言级别为目标,并要求使用 Kotlin Gradle 插件 2.0.0 或更高版本。(Idb6b5)
API 变更
添加了
NotificationCompat.ProgressStyle和NotificationCompat.Builder.setRequestPromotedOngoing()。有关详细信息,请参阅以进度为中心的通知和实时更新。添加了
Parcel.use扩展函数,用于安全地处理Parcel资源。(I436da)
版本 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 空安全注解,它们是类型使用的。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 已发布。版本 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 修复
- 修复
getLaunchDisplayId()在 SDK < 26 上返回错误的默认值 0 的问题。(Icd679) - 此库现在使用 JSpecify 空安全注解,它们是类型使用的。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的兼容 API。(Ibd1fd, b/287470173) - 添加
OutcomeReceiverCompat,这是 Android 的OutcomeReceiver在所有 API 级别上的版本。(Ib8265, b/380060342) - 为
android.view.ScrollFeedbackProvider添加兼容类。(Icaa92) - 添加
ViewCompat.addViewOverlay(View)作为View.getOverlay().add(View)的替代方案。ViewCompat变体修复了一个问题,即在被覆盖的视图和覆盖所有者之间无法解析LifecycleOwner和ViewModelStoreOwner等所有者。(I81413) - 引入了
View可以拥有不相交父级的概念。视图的不相交父级是另一个视图,它实际上是另一个视图的父级,但不是通过View.parent属性设置的。请参阅文档以获取更多信息。(Ib2950) - 添加新的 API
ViewGroupCompat#installCompatInsetsDispatch,供开发人员修复 API 30 之前存在的内嵌调度问题。(I11159) - 添加
FontsContractCompat.TypefaceStyleIntDef,用于标注FontsContractCompat中的Typeface样式。(Ib3e5b)
外部贡献
- 弃用
BuildCompat.isAtLeastV。调用方应直接对照 35 检查SDK_INT。感谢 Jake Wharton!(I294d1) - 为
TaskStackBuilder添加可变性标志。感谢 Kamal Faraj!(Ife0ec, b/371534781)
版本 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-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 变更
- 为可下载字体定义添加了
fallbackQueryXML 属性,允许使用可下载字体进行字符级回退。(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 保持同步。
版本 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 变更
- 弃用其他过时的兼容方法。(Ie4470, b/313834577)
- 弃用过时的兼容方法。(I01d90, b/313834577)
- 更新
isAtLeastV()以在最终确定的 V SDK 上返回 true。(I6339a)
版本 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 路径字符串创建路径实例。
版本 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 编写。存储在池中的对象的泛型类型现在必须是非空的。(I08afe)
外部贡献
GestureDetectorCompat现已弃用,因为GestureDetector保证在库的最低 SDK 版本中的平台上可用。感谢 Jake Wharton 的贡献。(Icc4cd)MarginLayoutParamsCompat现已弃用,因为MarginLayoutParams保证在库的最低 SDK 版本中的平台上可用。感谢 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.canScheduleExactAlarmsAPI (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.canScheduleExactAlarmsAPI (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中过时的兼容方法。(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事件。这由 Activity 库 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)
依赖项更新
- Core 现在依赖于 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 路径字符串创建路径实例。(Ic7af2, b/302376846) - 为
Context.createAttributionContext添加兼容方法。(I61dcf, Ibe187) - 将
NotificationCompatSideChannelService标记为弃用。(I18fd9) - 微分运动甩动的新 API。(I46b0d, Ia9f68)
- 用于
VelocityTracker以跟踪平台 SDK 的其他兼容 API。(I32753)
Bug 修复
- 重写
Person中的equals和hashCode方法。(I610a5)
版本 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 奇偶校验。
- 新的
LocalePreferencesAPI,可帮助开发人员轻松访问区域设置数据或用户的区域设置首选项。 - 弃用
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 变更
- 将
setLineHeight(unit, lineHeight)添加到TextView兼容类中 (Ia9fa9) - 从 Android 14 添加
TypedValueCompat.getUnitFromComplexDimension()(I958e8) - 将
setLineHeight(unit, lineHeight)添加到TextView兼容类中 (Ib2ee1) - 向后移植杂项辅助功能 API (Ic65ba)
- 向后移植 API 34
AccessibilityNodeInfo方法 (I44182) - 将稳定的 SDK 检查从实验性升级 (Ia9b35)
- 向后移植
AccessiiblityWindowInfo34 API (I96a5d) - 弃用
BuildCompat.isAtLeastU()。请改用SDK_INT >= 34。(I4f8e7, b/289269026) - 删除了实验性
isAtLeastU()API 的使用 (Ie9117, b/289269026) - 将
BuildCompat迁移到 Kotlin 以增强 Deprecated 标记 (I56775, b/289269026) - 将
setLineHeight(unit, lineHeight)添加到TextView兼容类中 (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 色调、色度、色度 (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 修复
- 修复了
unregisterGnssMeasurementsCallback()在 Android R 以下无法正常工作的错误。(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以帮助开发人员轻松访问区域设置数据或用户的区域设置首选项。
版本 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 色调、色度、色度 (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) - 添加
ContextCompat#getContextForLanguage(Context),用于在非 Activity 上下文中获取应用内区域设置 (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 级别上使用WindowInsetsControllerAPI 时已知问题的解决方法,并且是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 修复
- 修复了
unregisterGnssMeasurementsCallback()在 Android R 以下无法正常工作的错误。(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 中,
getType的ContentProviderAPI 要求调用方持有正确的读取权限。FileProvider现在提供了一个默认的getTypeAnonymous实现,这是不受限制的版本。(I4773f) - 添加用于内容捕获 API 的兼容类 (I09366)
- 添加
NotifCompat.Builder.setLargeIcon(Icon)(Ic0a5b) - 向
NotificationManagerCompat添加批处理通知 API。鼓励用户在发布多个通知时使用此 API。(I2cd7f) - 在 R 前平台上添加对 Executor 支持的
registerGnssMeasurementsCallback()(I579f8)
版本 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 以来的重要变更
- 弃用辅助功能对象的回收。我们发现即使在受支持的最旧操作系统版本上,性能变化也可以忽略不计。(I0a961)
- 添加 SDK 扩展版本的
BuildCompat常量。(I6084c) - 有关新 API 和错误修复,请参阅 1.10.0 预发布版本的发行说明。
版本 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的set/getMinMillisBetweteenContentChangesAPI 已重命名为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 变更
- 将
CallStyle添加到NotificationCompat(Id9a53, b/199294989) - 添加 SDK 扩展版本的
BuildCompat常量 (I6084c) - 添加用于设置辅助功能节点初始焦点的 API。(Id199a)
- 添加用于内容更改速率限制的新 API (If4ea0)
- 为 Android 13 中引入的 Parcels、Bundles 和 Intents 新 API 添加兼容方法。一些
ParcelCompat方法签名已更新,升级时可能需要更改源代码以确认新签名。(I57e94, b/242048899) - 弃用辅助功能对象的回收。我们发现即使在受支持的最旧版本上,性能变化也可以忽略不计。(I0a961)
- 更新了已弃用隐藏函数的返回类型空安全性 (Ibf7b0)
- 为 Point 和 PointF 添加 times/div 运算符重载 (I8e557, b/261574780)
Bug 修复
版本 1.9
版本 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) - 在 SDK 33 及以上版本上,为需要授予
POST_NOTIFICATIONS权限的 API 添加@RequiresPermission。(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 修复
- 为 SDK 33 及以上版本需要授予
POST_NOTIFICATIONS权限的 API 添加了@RequiresPermission。(Ie542e,b/238790278) - 添加对 T 中引入的 API 的支持。" into androidx-platform-dev" ()
- 添加对 T 中引入的 API 的支持。(I358f1)
TypefaceCompate.create(..., weight, italic)将在 API 14-20 上无法解析兼容实现时回退到平台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 兼容。
1.8 版本
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) - 针对最终确定的 SDK_INT 值更新了
BuildCompat.isAtLeastT()。(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 编写挂起包装器 (suspend wrapper) 时创建回调 (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。这改善了与对话框 (Dialogs) 的行为、显示 IME 的效果,并确保了非弃用的创建方法的变通方案 (b/180881870)。(I29264, b/207401542, b/210121779) - 清理了部分 androidx.core API 的可空性。(Ib2583, b/206113818)
- 修复了
performAccessibilityAction参数的可空性 (Ibbafe) - 添加了用于解决由 Theme 键控缓存和 Theme.applyStyle 导致的
ColorStateList问题的方法 (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 变更
- 为未来的 SDK 添加了实验性
BuildCompat方法 (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 修复
版本 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 修复
MenuHostHelper现在将在MenuProvider在生命周期变为DESTROYED之前被移除时,正确移除所有 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)
版本 1.6
版本 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设置器,弃用旧的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添加功能相关的设置器方法 (I45af6)
版本 1.5
版本 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 Animation API
- 更新了
OnReceiveContentListener以支持富内容 - 向后移植了
WindowInsetsController和WindowInsetsCompatAPI 以控制系统栏外观 - 更新了
ActivityCompat.recreate(),使其可以在任何 API 级别上的任何生命周期状态下安全调用 - 添加了通过
EditorInfoCompat提供和检索初始周边文本的 API,这允许 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 Animation API 与平台实现连接起来 (I078da)
- 添加了新的 Insets Animation 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 修复
- 修复了一个错误:在较新的 OS 版本上设置
BigPictureStyle.bigLargeIcon会破坏该通知的BigPictureStyle。(Ic623d)
外部贡献
- ShareCompat 现在使用构造函数进行创建,旧的工厂方法已被弃用。现在您可以从 Context 创建构建器 (builders) 和读取器 (readers),不再需要 Activity。(I315b6, b/173043501)
- 使用 ShareCompat 共享流时设置剪辑数据 (clip data) 并授予 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) - 向后移植了用于控制系统栏外观的
WindowInsetsControllerAPI。(Ieb4ee) - 将带有布尔值的
getFont重命名为getCachedFont(Iea520) - 向后移植了 API 30 中添加的 WindowInsetsController API 的
#hide()和#show()方法 (I21573) - 添加了具有 cacheOnly 选项的新 API
ResourcesCompat#getFont(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 修复
- 允许在任何 API 级别上的任何生命周期状态下安全调用
ActivityCompat.recreate()。(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) - 使用 compat 对象查询通知渠道和组。(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 版本包含这些提交。
新功能
WindowInsetsCompatAPI 已更新为 Android 11 平台中的 API。这包括新的ime()插页类型,允许检查屏幕键盘的可见性和大小。- 关于
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) - 向
AccessibilityNodeProviderCompat添加addExtraDataToAccessibilityNodeInfo(I26575) - 将 WindowInsetsCompat 更新为 Android 11 API (I3df9e)
外部贡献
- 添加
MailTo方法的Uri重载 (I6fa6b) - 添加了
MailToAPI,它为所有 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 已发布。
新功能
- 提供与 Android R 平台 SDK API 的一致性,针对
ShortcutManager、ShortcutInfo、AccessibilityNodeInfo、DisplayCutout、GnssStatus和Notification类
Bug 修复
- 明确建议检查 shouldShowPermissionRationale。
- 将 AtomicFile 更改为使用就地重命名。
- 使用给定字体的样式调整 Typeface 显示样式。(b/156853883)
- 修复失败的 Notification Builder 测试
- 修复
LocationManagerCompat的注册/取消注册错误。
版本 1.4
版本 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 以支持插入富内容的不同方式。目前,该 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)
版本 1.3
版本 1.3.2
2020 年 10 月 1 日
androidx.core:core:1.3.2 和 androidx.core:core-ktx:1.3.2 已发布。1.3.2 版本包含这些提交。
Bug 修复
- 允许在任何 API 级别上的任何生命周期状态下安全调用
ActivityCompat.recreate()。(I62dde, b/160122826)
版本 1.3.1
2020 年 7 月 22 日
androidx.core:core:1.3.1 和 androidx.core:core-ktx:1.3.1 已发布。1.3.1 版本包含这些提交。
Bug 修复
- 修复了已解析字体资源
Typeface的字重和样式在 API Level 29 上具有错误值的问题 (b/156853883)
版本 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,用于检索分发给视图层级的原始窗口插页 (window insets)
版本 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,用于以指定的持续时间进行平滑滚动- 用于检索分发给视图层级的原始窗口插页的新
ViewCompatAPI
版本 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 变更
- 添加了一个
NotificationCompatAPI 以静音某个通知实例 - 添加了
ResourcesCompat.NULL_ID - 弃用了
NotificationCompat中的CarExtender.UnreadConversation - 添加了一个
DisplayCompatAPI 以获取设备的物理尺寸
错误修复
- 改进了
NotificationCompat中没有图标的操作处理 - 修复了 API Level 23 上 TextView 相对于复合绘制对象的绘制对象着色问题 (aosp/1172194)
- 确保基础上下文 (base context) 始终是一个包装器
- 修复了 RecyclerView 不应默认填充 Collection[Item]Info 的问题
版本 1.2
版本 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 和错误修复 - 添加了以向后兼容方式使用 Android Q 中引入的
BlendMode的新 API - 在辅助功能兼容中添加了新 API 和错误修复
- 添加了用于处理
ShortcutInfo的新 API - 添加了用于处理
WindowInsets的新 API - 修复了
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 操作的支持,并弃用了使用资源 ID 表示操作图标的公共字段(及其 getter)。(aosp/1119192)
- 添加用于长整型的
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,以匹配 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)
- 向
TraceCompat添加async、counter和isEnabled(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等效项 - 添加新的 getter 到 WindowInsetsCompat 和 ViewCompat
- 添加对通知中点击编辑的支持
- DrawerLayout 系统手势排除矩形
- 添加用于是否允许系统生成上下文操作的 NotificationCompat API
- 在 NavUtils 中处理禁用的
<activity-alias>组件 - 添加
AccessibilityNodeInfoCompat.setEntryKey
错误修复
- 修复在 TypefaceCompat 中加载字体时的异常
- 各种 DayNight 修复
- 修复了
EditorInfoCompat、ShareCompat、WakefulBroadcastReceiver和InputConnectionCompat中 28.0(支持库)和 1.1(AndroidX)之间 Bundle 键字符串的向后兼容性
版本 1.1
版本 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 已发布。此版本中包含的提交可以在这里找到。
错误修复
FingerprintManagerCompat#getFingerprintManagerOrNull在 API level 23 上不应检查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)
- 修复嵌套滚动时猛滑 (fling) 的速度错误。(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 的初始发布破坏了用于进程间通信、在 Bundle 中发送键控数据的支持库 compat API 的向后兼容性。此版本修复了这种兼容性,恢复了使用支持库 28.0(或更早版本)构建的代码与 AndroidX 1.1(或更高版本)之间的通信。
API 变更
- 取消弃用能力设置器 (aosp/937281)
RemoteActionCompat现在是 VersionedParcelable (aosp/928534)
错误修复
- 核心测试中的 AppCompatTextView 应使用 appcompat 主题创建 (aosp/951636)
- 为 InputConnectionCompat 使用 1.0 之前的字符串值 (aosp/948725)
- 使用非 AndroidX 字符串作为 Bundle 键的后备互操作 (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 已发布。此版本中包含的完整提交列表可以在这里找到。
新功能
- 用于处理 28 之前平台错误的新
ActivityCompat.recreate()API (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 将‘consumed’参数添加到重载的 dispatchNestedScroll 和 * onNestedScroll 方法中,以便驱动嵌套滚动的视图可以更好地了解每次嵌套滚动传递中父级消耗了多少滚动距离。
- NestedScrollView 现在实现 NestedScrollingChild3 和 NestedScrollingParent3,因此,不保证调用 dispatchNestedScroll 和 onNestedScroll 的 NestedScrollingChild2 和 * NestedScrollingParent2 实现。依赖于调用其中任何一个的开发者也应重写 dispatchNestedScroll 和 onNestedScroll 的新嵌套滚动 3 版本。
- ShortcutInfoCompat 具有以下新字段:Persons、categories 和 isLongLived。此举旨在告知它能够接受各种类型 * 的内容。
- 将 SupportActivity 重命名为 ComponentActivity。有关更多信息,请参阅 androidx.activity。
- 添加了 getMainExecutor() 方法,该方法返回一个 Executor 链接,该链接将在与该上下文关联的主线程上运行排队的任务 *。
- 添加了 Resources.getFloat 的兼容性实现。
- 向兼容的 RemoteInput 添加了结果来源。这允许应用区分直接回复和智能回复,以用于日志记录目的。
- 为 TextView TextWatcher 操作添加了 Kotlin 扩展函数。
- 弃用 AccessibilityNodeInfo 功能和标志设置器;改用操作。
- 向 ViewCompat 添加了 AccessibilityPane。
- 通过添加 AccessibilityClickableSpanCompat,在 pre-O 设备上公开 ClickableSpans。
- 弃用
AccessibilityNodeInfoCompat.setFocusable()、setClickable()、setLongClickable()、setScrollable()和setContextClickable()。改用AccessibilityAction。 - 添加了
ViewCompat.setAccessibilityPaneTitle()、getAccessibilityPaneTitle()、setScreenReaderFocusable()、isScreenReaderFocusable()、setAccessibilityHeading()和isAccessibilityHeading(),以向后移植此View辅助功能,支持至 API 19。 - 添加了
ViewCompat.enableAccessibleClickableSpanSupport(),以允许开发者使非 URLClickableSpan可通过 API 19 访问。
错误修复
- 修复了使用可下载字体时网络故障导致
ResourcesCompat.getFont()崩溃的错误。 - 修复了
ContentResolver返回 null 时在 TypefaceCompatApi21 中发生的空指针异常。 - 修复了 Array Utils 中的类型错误,该错误预期 ColorStateList 但获得了原始颜色。
版本 1.0
版本 1.0.2
2019 年 5 月 7 日
androidx.core:core:1.0.2 和 androidx.core:core-ktx:1.0.2 已发布。此版本包含 2 个提交。
AndroidX 的初始发布破坏了用于进程间通信、在 Bundle 中发送键控数据的支持库 compat API 的向后兼容性。此版本修复了这种兼容性,恢复了使用支持库 28.0(或更早版本)构建的代码与 AndroidX 1.1(或更高版本)之间的通信。
错误修复
- 为 InputConnectionCompat 使用 1.0 之前的字符串值 (aosp/948725)
- 使用非 AndroidX 字符串作为 Bundle 键的后备互操作 (aosp/938269)
版本 1.0.1
2018 年 11 月 7 日
core-1.0.1 和 appcompat-1.0.2 的错误修复版本。
错误修复
- 修复了当与 RTL
AppCompatTextView一起使用时PrecomputedTextCompat会崩溃的错误。b/113070424
Core-Ktx 版本 1.0.1
2018 年 11 月 5 日
androidx.core-ktx 1.0.1 已发布,包含以下错误修复
- 修复了并集 (union) 和交集 (intersection) 的实现被交换的错误。
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-paths 合并了公共和实验性 API 文件 (I8cfee, b/278769092)
- 迁移
androidx.core组以使用合并的公共 API 文件 (Ifdef4, b/278769092)
版本 1.1
版本 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 应用显示。
版本 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库添加的快捷方式将保存为 firebase appindexing 中的 Shortcut 对象,而不是通用的 schema.org/Thing 对象。
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 App Index 捐赠快捷方式。
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 特定的实现,为经过测试的设备和 OS 版本提供最新的媒体性能类信息。
- Core Performance Testing - 用于 Core Performance 的测试替身 (test doubles)。
Bug 修复
- 修复了版本
1.0.0-beta2中发现的初始化PlayServicesDevicePerformance时的崩溃问题。(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 的初始 Beta 版。
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-Remoteviews
版本 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 版本包含这些提交。
新功能
- 将
RemoteViews1.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 版本包含这些提交。
新功能
- 版本号提升以匹配依赖项版本。
版本 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移至 Beta 版。
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.setRemoteAdapterAPI 的向后移植。 - Kotlin 扩展函数,用于在调用
RemoteViews方法时避免反射。 - 包含用于处理
App Widget尺寸 API 的辅助函数的库。
Core-Splashscreen
版本 1.2
版本 1.2.0
2025 年 11 月 5 日
androidx.core:core-splashscreen:1.2.0 已发布。1.2.0 版本包含这些提交。
版本 1.2.0-rc01
2025 年 7 月 2 日
androidx.core:core-splashscreen:1.2.0-rc01 已发布。1.2.0-rc01 版本包含这些提交。
版本 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 修复
- 将
Base.Theme.SplashScreen的刘海屏模式改为自 v30 起始终启用。(Idfc3f) - 重置
enforceNavigationBarContrast为 API 31 起的系统默认值,这样启动画面主题就不会破坏 Activity 的主题。从 API 31+ 开始,启动画面不再创建为PhoneWindow,因此无需继承 API 29 的值。此外,从applyAppSystemUiTheme中移除了覆盖操作,因为enforceNavigationBarContrast可能在启动期间被应用端更改,从属性中覆盖它没有意义。(Ic2cd9) - 设置遵守白天/夜间主题的默认浅色导航栏。因此对于 API 33+ 平台,启动画面主题在移除启动画面时不会导致闪烁。(I8023a)
- 从 API 33 接收到启动画面视图后,不要覆盖 Activity 主题。(I10587b)
版本 1.1
版本 1.1.0-rc01
2024年4月3日
androidx.core:core-splashscreen:1.1.0-rc01 已发布。1.1.0-rc01 版本包含这些提交。
Bug 修复
- 为 Wear 设备提供 48x48dp 图标的默认尺寸(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 修复
- 为 Wear 设备提供 48x48dp 图标的默认尺寸(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)
版本 1.0
版本 1.0.1
2023 年 4 月 19 日
androidx.core:core-splashscreen:1.0.1 已发布。1.0.1 版本包含这些提交。
Bug 修复
- 为 Wear 设备提供 48x48dp 图标的默认尺寸(Ib8de8, b/256678037)
版本 1.0.0
2022 年 7 月 27 日
Core 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 上的 systemBar 闪烁问题:确保在自定义退出动画时系统栏不会闪烁。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中的 KDocs。
Core-Animation 和 Core-Animation-Testing
版本 1.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 修复
- 修复了具有多个针对单个属性的 Animator 的 AnimatorSet。(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-Backported-Fixes
版本 1.0
版本 1.0.0
2025 年 12 月 17 日
androidx.core:core-backported-fixes:1.0.0 已发布。1.0.0 版本包含这些提交。
版本 1.0.0-rc01
2025 年 12 月 3 日
androidx.core:core-backported-fixes:1.0.0-rc01 已发布。1.0.0-rc01 版本包含这些提交。
Bug 修复
- 修复 KI_452390376 文档中的代码链接 (I9a554, b/454020407)
版本 1.0.0-beta02
2025 年 11 月 5 日
androidx.core:core-backported-fixes:1.0.0-beta02 已发布。1.0.0-beta02 版本包含这些提交。
API 变更
- 添加已知问题 b/452390376(自动曝光模式低光增强 (LLB))无法在 Pixel 10 设备上的视频通话等流用例中启用。(Iba480, b/452390376)
Bug 修复
- 标记特定的 Pixel 构建为已修复。(I4c751, b/398591036)
- 添加对为已知问题指定手动测试的构建指纹列表的支持。(Iea9f9, b/453691379)
版本 1.0.0-beta01
2025 年 9 月 24 日
androidx.core:core-backported-fixes:1.0.0-beta01 已发布。1.0.0-beta01 版本包含这些提交。
版本 1.0.0-alpha01
2025 年 8 月 13 日
androidx.core:core-backported-fixes:1.0.0-alpha01 已发布。1.0.0-alpha01 版本包含这些提交。
新功能
Core Backported Fixes 库允许您检查设备是否已应用关键错误修复。这很有用,因为错误修复推送到所有设备可能需要很长时间,而此 API 为您提供了一种方式,让您知道何时可以安全地使用依赖于该修复的功能。
val fixManager = BackportedFixManager() if (fixManager.isFixed(KnownIssues.KI_1234)) { Offer_experience_that_needs_fix() } else { Offer_experience_that_avoids_the_bug() }
此版本包括
KnownIssues.KI_398591036:在某些 Pixel 设备上捕获JPEG-R图像时出现异常色调。通过使用JPEG输出直到此 KI 解决来修复。
Core-i18n
版本 1.0
版本 1.0.0
2025 年 4 月 9 日
androidx.core:core-i18n:1.0.0 已发布。
该组件旨在更轻松地创建国际化应用程序,主要集中在两个领域
- 遵循当前最佳实践的日期和时间格式化功能,尊重用户自定义设置,并提供一个在旧版本和新版本 Android 上都能正常工作的统一 API。
android.icu.text.MessageFormat的向后移植,适用于旧版 API。但在新版 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组件的第一个版本。该组件旨在更轻松地创建国际化应用程序,主要集中在两个领域- 遵循当前最佳实践的日期和时间格式化功能,尊重用户自定义设置,并提供一个在旧版本和新版本 Android 上都能正常工作的统一 API。
android.icu.text.MessageFormat的向后移植,适用于旧版 API。但在新版 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
2026 年 6 月 17 日
androidx.core:core-location-altitude:1.0.0、androidx.core:core-location-altitude-external-protobuf:1.0.0 和 androidx.core:core-location-altitude-proto:1.0.0 已发布。1.0.0 版本包含这些提交。
1.0.0 的主要特性
Bug 修复
- 将库移至使用 Java 11 目标。这意味着生成的字节码将为 Java 11(类文件版本 55),并且可能需要去糖化才能使用该库(If4c2a, b/457821470)
- 添加 ViewBoundsTracker 类,用于持续跟踪视图边界,以便在 PictureInPictureParamsCompat 中设置 sourceRectHint(Id203a, b/474454111)
- 添加 PictureInPictureParamsValidator 类,用于验证应用提供的 PictureInPictureParamsCompat(I89b4d, b/470149490)
- 将 Pixel Dec 版本添加到 KI_398591036 中的已修复构建指纹列表中 (I65f51, b/398591036)
- 将 Pixel Nov 版本添加到 KI_398591036 中的已修复构建指纹列表中 (I60c10, b/398591036)
- 将 Pixel Oct 版本添加到 KI_398591036 中的已修复构建指纹列表中 (I6438c, b/398591036)
- 从 FingerprintManagerCompat 中移除了对 FingerprintManager 类的引用,并将所有方法更新为返回 false 或执行无操作。(I0360b, b/330524057)
- 修复 KI_452390376 文档中的代码链接 (I9a554, b/454020407)
- 将特定的 pixel 构建标记为已修复。(I4c751, b/398591036)
- 添加对为已知问题指定手动测试的构建指纹列表的支持。(Iea9f9, b/453691379)
版本 1.0.0-rc01
2026 年 3 月 11 日
androidx.core:core-location-altitude:1.0.0-rc01、androidx.core:core-location-altitude-external-protobuf:1.0.0-rc01 和 androidx.core:core-location-altitude-proto:1.0.0-rc01 已发布,自上次 Beta 版以来没有重大更改。1.0.0-rc01 版本包含这些提交。
版本 1.0.0-beta01
2025 年 11 月 5 日
androidx.core:core-location-altitude:1.0.0-beta01、androidx.core:core-location-altitude-external-protobuf:1.0.0-beta01 和 androidx.core:core-location-altitude-proto:1.0.0-beta01 已发布,自上次 Alpha 版以来没有重大更改。1.0.0-beta01 版本包含这些提交。
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 失败。
外部贡献
- 上述错误修复由 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-pip
版本 1.0
版本 1.0.0-alpha02
2026 年 2 月 11 日
androidx.core:core-pip:1.0.0-alpha02 已发布。1.0.0-alpha02 版本包含这些提交。
新功能
- 添加了
BasicPictureInPicture和VideoPlaybackPictureInPicture以简化标准实现。新的VideoPlaybackPictureInPicture类允许库自动处理视图边界跟踪,从而确保更平滑的视觉过渡。
API 变更
- 删除
onViewBoundsChangedAPI (Ie56d0, b/475328144) - 添加
BasicPictureInPicture和VideoPlaybackPictureInPicture类用于典型的画中画用法 (I7f989, b/475328144)
Bug 修复
- 添加
ViewBoundsTracker类,用于持续跟踪视图边界,以便在PictureInPictureParamsCompat中设置sourceRectHint。(Id203a, b/474454111)
版本 1.0.0-alpha01
2026 年 1 月 14 日
androidx.core:core-pip:1.0.0-alpha01 已发布。1.0.0-alpha01 版本包含这些提交。
新功能
引入 PiP Jetpack 库是为了解决 Android 画中画 (PiP) 模式中的几个挑战
- 操作系统碎片化:该库处理 Android 版本之间 PiP API 调用的差异,例如 Android S 之前的
enterPictureInPictureMode和之后的isAutoEnterEnabled。 - 不正确的 PiP 参数:它为设置正确的 PiP 参数(特别是对于播放)提供了统一的解决方案,以确保平滑的动画(例如 source rect hint)。
- 碎片化的 PiP 状态回调:该库将
onPictureInPictureModeChanged和onPictureInPictureUiStateChanged合并为一个单一、统一的回调接口,以简化状态管理。
API 变更
PictureInPictureDelegate类,可代表给定的PictureInPictureProvider实例帮助设置 PiP (画中画) 功能(8cf9588)。PictureInPictureDelegate.onPictureInPictureEvent接口,为应用程序监听画中画事件提供统一的回调(8cf9588)。
Bug 修复
- 添加
PictureInPictureParamsValidator类,用于验证应用提供的PictureInPictureParamsCompat(I89b4d, b/470149490) - 引入了专用的
:core:core-pip库,以帮助应用开发者实现 Android PiP (画中画) 功能(I8ebc5, b/462178249)
Core-Role
版本 1.1
版本 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 变更
- 添加系统图库的角色名称。
版本 1.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,其中包含系统中可能可用的角色的名称和文档。
Core-telecom
版本 1.1
版本 1.1.0-alpha06
2026 年 6 月 17 日
androidx.core:core-telecom:1.1.0-alpha06 已发布。1.1.0-alpha06 版本包含这些提交。
API 变更
- 从稳定扩展中移除
ExperimentalAppActions注解(I25ab2, b/501448256)
Bug 修复
- 修复在 sdk=34+ 上使用向后兼容路径时视频通话路由到听筒而不是扬声器的错误(I9f2bd, b/519599698)
- 修复了一个问题,即传入的仅音频
VoIP通话被平台错误地视为视频通话,导致它们被路由到扬声器而不是听筒(I95902, b/517616475) - 修复了 Core-Telecom 中的一个错误,该错误导致在呼叫初始化期间有意切换到扬声器会被错误地恢复到听筒。(I9e251, b/478022476)
- 修复了 Core-Telecom 中冗余的音频状态更新可能导致主线程拥塞和潜在 ANR 的问题。(Ibd794, b/491873537)
- 修复
BlueoothProfileListener#onServiceConnected中的 NPE(Idbd57, b/513341034) - 通过在不受影响的平台版本上抑制特定于版本的错误缓解测试,修复了 Android 17 (SDK 37) 上 CallSessionTest 中的测试失败。(I970a7, b/502732317)
版本 1.1.0-alpha05
2026 年 4 月 22 日
androidx.core:core-telecom:1.1.0-alpha05 已发布。1.1.0-alpha05 版本包含这些提交。
Bug 修复
- 修复了 Android 14-16 上音频通话在开始时可能会意外路由到扬声器的问题 (Ic7000, b/491932378)
- 修复了
core-telecom中的一个崩溃问题 (IllegalStateException),如果电信框架或远程服务在扩展设置期间多次调度连接事件,可能会发生此崩溃。(I00f82, b/476724351) - 当
BLUETOOTH_CONNECT权限被拒绝时,Telecom 现在将使用后备启发式方法来识别用于音频路由决策的可穿戴设备。(Iec271, b/499302063)
版本 1.1.0-alpha04
2026 年 3 月 25 日
androidx.core:core-telecom:1.1.0-alpha04 已发布。1.1.0-alpha04 版本包含这些提交。
Bug 修复
- 修复了旧版 Android 上传入或升级的视频通话有时会错误地将音频路由到听筒的问题。如果检测到此错误路由,该库现在会强制切换到扬声器。(I0fc797, I29fd22)
- 从呼叫前屏幕中显示的可用端点列表中移除了 A2DP 蓝牙设备,因为这些设备不被 Android 平台 Telecom 框架支持用于语音通信。这使可用设备与平台行为保持一致。(I98b729)
- 跳过了托管呼叫的呼叫扩展逻辑,以防止潜在的崩溃或意外行为。(I177905)
版本 1.1.0-alpha03
2026 年 2 月 11 日
androidx.core:core-telecom:1.1.0-alpha03 已发布。1.1.0-alpha03 版本包含这些提交。
新功能
- 选择退出高级网络切片:在
CallsManager中引入了一项新功能CAPABILITY_OPT_OUT_OF_PREMIUM_NETWORK。这允许 VoIP 应用程序表明它们希望退出系统为语音和视频通话请求高级网络切片的默认行为。默认情况下,系统可能会自动请求高级网络切片以提高通话质量。此功能可以在registerAppWithTelecom期间传递。(I2dfdb) - 控制麦克风静音功能:添加了 API,允许 VoIP 应用通知远程界面(如 Android Auto、可穿戴设备)用户是否应该能够控制麦克风状态。这在用户被限制更改其静音状态的情况下很有用,例如处于主持会议中、以被动观看者身份加入或使用伴侣模式。(I55acf)
API 变更
- 添加
CallsManager.CAPABILITY_OPT_OUT_OF_PREMIUM_NETWORK:将此标志与registerAppWithTelecom(int)一起使用,以防止系统自动请求高级网络功能。kotlin val callsManager = CallsManager(context) // 注册到 Telecom,选择退出高级网络请求 callsManager.registerAppWithTelecom(CallsManager.CAPABILITY_OPT_OUT_OF_PREMIUM_NETWORK) onCanUserUpdateSilence现在是可选的 (Ibb0c2)- 添加用于通知界面是否应该显示麦克风的 API(I55acf)
Bug 修复
- 修复了
JetpackConnectionService中的NullPointerException,这是由访问挂起的呼叫请求时的竞争条件引起的。通过切换到CopyOnWriteArrayList以实现线程安全迭代解决了此问题。(I24306) - 更正了会议摘要扩展中的一个问题,即当前发言人被发出了字面字符串 "null" 而不是真正的
null值。(Idae9a)
版本 1.1.0-alpha01
2025 年 10 月 8 日
androidx.core:core-telecom:1.1.0-alpha01 已发布。1.1.0-alpha01 版本包含这些提交。
新功能
- 增加了应用程序请求特定通话不保存在系统通话记录中的功能,即使应用已普遍选择加入通话记录。此功能仅在运行
Build.VERSION.SDK_INT_FULL >= Build.VERSION_CODES_FULL.BAKLAVA_1的设备上有效。
API 变更
- 在
CallAttributesCompat数据类中引入了可选的isLogExcluded布尔属性。将其设置为 true 会请求系统将该通话从通话记录中排除。在较旧的平台版本上,此属性无效。请注意,VoIP 通话默认不会记录到系统通话记录中。开发者必须首先明确使其应用选择加入系统通话记录。这需要在应用的清单中为android.telecom.action.CALL_BACK声明一个意图处理程序。新的isLogExcluded属性为已经启用此集成的应用提供了按通话排除的选项。(d14695)
版本 1.0
版本 1.0.1
2025 年 8 月 27 日
androidx.core:core-telecom:1.0.1 已发布。1.0.1 版本是一个错误修复版本,包括以下改进,可在这些提交中找到。
Bug 修复
- 音频路由和端点处理
- 稳定性和崩溃修复
版本 1.0.0
2025 年 5 月 7 日
androidx.core:core-telecom:1.0.0 已发布。1.0.0 版本包含这些提交。
1.0.0 的主要特性
- core-telecom API 的初始稳定版本,专注于用于将 VoIP 通话集成到 Android 平台的
CallsManagerAPI 表面。
版本 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)
- 添加新的
CallsManagerAPIgetAvailableStartingCallEndpoints(Ia8bcf) - 更新
ExperimentalAppActions注解,以确保它准确跟踪实验性功能的所有使用情况。(Id5ea5)
Bug 修复
- 为 Android API 级别 28 到 33 添加全局静音状态接收器。(I75e66)
- 修复了仅最新的连接的
InCallService能够发送操作事件的问题(I39599) - 为 voip 应用操作实现 ICS 扩展 API。(I1274c)
- 在 API 级别 34 之前拒绝通话现在将正确地销毁 Telecom 中的通话。(I635b7)
addCall现在通过 API 而不是父协程正确地抛出异常(I83334)- 向 extras 捆绑包添加占位符值(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对来自 Telecom 平台 API 的意外 NULL 值也具有弹性。 - 对
addCall/CallControlScopeAPI 文档的改进。 - 测试可靠性改进。
版本 1.0.0-alpha02
2023年10月4日
androidx.core:core-telecom:1.0.0-alpha02 已发布。1.0.0-alpha02 版本包含这些提交。
API 变更
- 重构了返回 boolean 以指示成功/失败的方法的 API 签名,改为返回一个明确指示操作成功或失败原因的结果类。
- 将
CallControlCallback方法作为 lambda 参数移动到addCall,以消除在调用范围内显式提供回调的需要。
Bug 修复
- 修复了
ConnectionService兼容层中的一个错误,该错误会导致在针对 U 之前的 SDK 运行时没有通话音频。 - 改进 API 文档。
版本 1.0.0-alpha01
2023 年 5 月 10 日
androidx.core:core-telecom:1.0.0-alpha01 已发布。此版本在内部分支中开发,应与 Android 14 Beta 2 一起使用。
新功能
引入了
CallsManagerAPI,VoIP 应用可以使用该 API 与设备上的 Telecom 框架集成。通知平台的呼叫可受益于前台执行优先级、在蓝牙、可穿戴和汽车设备上的可见性以及简化的音频路由。CallsManagerAPI 为运行旧版本 Android 的设备包装了遗留的ConnectionServiceAPI。
Core-viewtree
版本 1.0
版本 1.0.0
2025 年 2 月 26 日
androidx.core:core-viewtree:1.0.0 已升级至其第一个稳定版本,自其之前的 RC 版本以来没有变化。
该库引入了视图能够拥有不相连父级的概念。视图的不相连父级是一个单独的 View 对象,它充当该视图的父级,但不是通过 View.parent 属性设置的。具有不相连父级的视图示例有 ViewOverlays、弹出窗口和对话框,它们都出现在主视图层次结构之外。视图仅在没有通过平台 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.parent属性设置的。具有不相连父级的视图示例有ViewOverlays、弹出窗口和对话框,它们都出现在主视图层次结构之外。视图仅在没有通过平台View.parent属性的直接父级时,才能拥有不相连的父级。目前,androidx 仅为由 transition 创建的ViewOverlays设置不相连父级。您还可以为视图指定自己的不相连父级。有关更多信息,请参阅文档。
API 变更
- 添加
ViewParent.getParentOrViewTreeDisjointParent()和ViewParent.setViewTreeDisjointParent(View, ViewParent?)方法(Ib2950)