Core

针对最新的平台功能和 API 调整应用,同时还支持旧设备。

下表列出了 androidx.core 组中的所有制品。

制品 稳定版 候选版 Beta 版 Alpha 版
core 1.15.0 - - 1.16.0-alpha01
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.0.0 1.1.0-rc01 - -
core-splashscreen 1.0.1 1.1.0-rc01 - 1.2.0-alpha02
此库的最后更新时间:2024 年 12 月 11 日

声明依赖项

如需添加 Core 的依赖项,您必须将 Google Maven 制品库添加到项目中。如需了解详情,请参阅 Google 的 Maven 制品库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

Groovy

dependencies {
    def core_version = "1.15.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.0.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-alpha02"
}

Kotlin

dependencies {
    val core_version = "1.15.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.0.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-alpha02")
}

如需详细了解依赖项,请参阅添加 build 依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库有任何改进建议,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

Core-Viewtree 版本 1.0

版本 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.parent 属性进行设置。具有不相交父级的 View 示例包括 ViewOverlays、弹出式窗口和对话框,它们都显示在主 View 层次结构之外。只有当 View 没有通过平台的 View.parent 属性具有直接父项时,才能具有不相交的父项。目前,androidx 仅为由转场效果创建的 ViewOverlays 设置不相交的父项。您还可以为视图指定自己的不相交的父级。如需了解详情,请参阅相关文档。

API 变更

  • 添加了 ViewParent.getParentOrViewTreeDisjointParent()ViewParent.setViewTreeDisjointParent(View, ViewParent?) 方法 (Ib2950)

Core-i18n Core-location-altitude 版本 1.0。

版本 1.0.0-alpha03

2024 年 10 月 16 日

发布了 androidx.core:core-location-altitude:1.0.0-alpha03androidx.core:core-location-altitude-external-protobuf:1.0.0-alpha03androidx.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-protoandroidx.core:core-location-altitude-external-protobuf 的依赖项升级到 1.1.0-alpha03,以解决漏洞风险。

bug 修复

  • 移除了手动说明对新平台 API 的访问权限,因为当将 R8 与 AGP 7.3 或更高版本(例如 R8 版本 3.3)搭配使用时,系统会通过 API 建模自动执行此操作;当使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)时,系统会针对所有 build 自动执行此操作。建议不使用 AGP 的客户更新到 D8 8.1 或更高版本。如需了解详情,请参阅这篇文章。(Ieb9aeb/345472586

版本 1.0.0-alpha02

2024 年 6 月 12 日

发布了 androidx.core:core-location-altitude:1.0.0-alpha02androidx.core:core-location-altitude-external-protobuf:1.0.0-alpha02androidx.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-alpha01androidx.core:core-location-altitude:1.0.0-alpha01版本 1.0.0-alpha01 中包含这些提交内容

新功能

  • 添加了包含单个静态方法 addMslAltitudeToLocation(Context, Location)AltitudeConverterCompat 类 (I11168)。

Core-telecom 版本 1.0。

版本 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)
  • preferredStartingCallEndpointvar 更改为 val。(Iab6b7)
  • 添加了本地通话静音 API (I29dd0)
  • CallEndpointCompat 类实现 compareTo 函数 (Ia06b7)
  • 添加了实验性应用有关操作 API。(Ifb796)
  • 添加了新的 CallsManager API getAvailableStartingCallEndpoints (Ia8bcf)
  • 更新了 ExperimentalAppActions 注解,以确保其准确跟踪实验性功能的所有使用情况。(Id5ea5)

bug 修复

  • 为 Android API 级别 28 到 33 添加了全局静音状态接收器。(I75e66)
  • 修复了以下问题:只有最近连接的 InCallService 才能发送操作事件 (I39599)
  • 为 VoIP 应用操作实现了 ICS Extensions API。(I1274c)
  • 现在,在 API 级别 34 之前拒绝通话会在 Telecom 中正确销毁通话。(I635b7)
  • addCall 现在会通过 API(而非父协程)正确抛出异常 (I83334)
  • 向 extras 软件包添加占位符值 (Iebf7f)
  • 移除了手动说明对新平台 API 的访问权限,因为当将 R8 与 AGP 7.3 或更高版本(例如 R8 版本 3.3)搭配使用时,系统会通过 API 建模自动执行此操作;当使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)时,系统会针对所有 build 自动执行此操作。建议不使用 AGP 的客户更新到 D8 8.1 或更高版本。如需了解详情,请参阅这篇文章。(Ieb9aeb/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/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 兼容性层中的一个 bug,该 bug 会导致在针对 Android 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 应用可以使用该 API 与设备上的 Telecom 框架集成。向平台发送的通话可获享前台执行优先级、在蓝牙、穿戴式设备和汽车设备上的可见性,以及简化的音频路由。

    CallsManager API 会为搭载旧版 Android 的设备封装旧版 ConnectionService API。

Core 和 Core-ktx 版本 1.16

版本 1.16.0-alpha01

2024 年 12 月 11 日

发布了 androidx.core:core:1.16.0-alpha01androidx.core:core-ktx:1.16.0-alpha01androidx.core:core-testing:1.16.0-alpha01。版本 1.16.0-alpha01 包含这些提交内容

API 变更

  • ActivityOptionsCompat 添加了 setLaunchDisplayId。(I39e77b/379669743
  • SYSTEM_OVERLAYS 添加了兼容 API。(Ibd1fdb/287470173
  • 添加了 OutcomeReceiverCompat,这是适用于所有 API 级别的 Android OutcomeReceiver 版本。(Ib8265b/380060342
  • android.view.ScrollFeedbackProvider 添加了兼容性类。(Icaa92)
  • 添加了 ViewCompat.addViewOverlay(View) 作为 View.getOverlay().add(View) 的替代方案。ViewCompat 变体修复了以下问题:在被叠加的视图和叠加层所有者之间无法解析 LifecycleOwnerViewModelStoreOwner 等所有者。(I81413)
  • 引入了 View 可以具有不相交父项的概念。视图的析取父视图是另一个视图的有效父视图,但并非通过 View.parent 属性设置。如需了解详情,请参阅相关文档。(Ib2950)
  • 添加了新的 API ViewGroupCompat#installCompatInsetsDispatch,供开发者修复 API 30 之前存在的内边距调度问题。(I11159)
  • 添加了 FontsContractCompat.TypefaceStyle IntDef,用于在 FontsContractCompat 中为 Typeface 样式添加注解。(Ib3e5b)

外部贡献

  • 已废弃 BuildCompat.isAtLeastV。调用方应改为直接将 SDK_INT 与 35 进行比较。感谢 Jake Wharton!(I294d1)
  • TaskStackBuilder 添加了可变性标志。感谢 Kamal Faraj!(Ife0ecb/371534781

Core 和 Core-ktx 版本 1.15

版本 1.15.0

2024 年 10 月 30 日

发布了 androidx.core:core:1.15.0androidx.core:core-ktx:1.15.0androidx.core:core-testing:1.15.0。版本 1.15.0 包含这些提交内容

自 1.14.0 以来的重要变更

  • 移除了手动说明对新平台 API 的访问权限,因为当将 R8 与 AGP 7.3 或更高版本(例如 R8 版本 3.3)搭配使用时,系统会通过 API 建模自动执行此操作;当使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)时,系统会针对所有 build 自动执行此操作。建议不使用 AGP 的客户更新到 D8 8.1 或更高版本。如需了解详情,请参阅这篇文章。(Ieb9aeb/345472586
  • 对兼容性类进行了多项更新,以与 Android 15 SDK 保持一致。

版本 1.15.0-rc01

2024 年 10 月 16 日

发布了 androidx.core:core:1.15.0-rc01androidx.core:core-ktx:1.15.0-rc01androidx.core:core-testing:1.15.0-rc01。与上一个版本相比,1.15.0-rc01 版没有任何变化

版本 1.15.0-beta01

2024 年 10 月 2 日

发布了 androidx.core:core:1.15.0-beta01androidx.core:core-ktx:1.15.0-beta01androidx.core:core-testing:1.15.0-beta01。版本 1.15.0-beta01 包含这些提交内容

API 变更

  • CollectionInfoCompat 添加了 itemCountimportantForAccessibilityItemCount 字段。(Ibaf34)

bug 修复

  • 修复了 androidx.core.os.Profiling 中的文档问题 (I2542f)

版本 1.15.0-alpha02

2024 年 8 月 21 日

发布了 androidx.core:core:1.15.0-alpha02androidx.core:core-ktx:1.15.0-alpha02androidx.core:core-testing:1.15.0-alpha02。版本 1.15.0-alpha02 包含这些提交内容

重要变更

  • 移除了手动说明对新平台 API 的访问权限,因为当将 R8 与 AGP 7.3 或更高版本(例如 R8 版本 3.3)搭配使用时,系统会通过 API 建模自动执行此操作;当使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)时,系统会针对所有 build 自动执行此操作。建议不使用 AGP 的客户更新到 D8 8.1 或更高版本。如需了解详情,请参阅这篇文章。(Ieb9aeb/345472586

API 变更

  • 向可下载字体定义添加了 fallbackQuery XML 属性,以允许使用可下载字体进行字符级回退。(Idd544)
  • 添加了用于使用 ProfilingManager 的辅助 API (If2292)
  • ActivityOptions.setPendingIntentBackgroundActivityStartMode 添加了兼容方法 (I3ba1fb/349617674)
  • 添加了 DisplayCutoutCompat.getCutoutPathI58778b/279635904
  • 还原了 ParcelCompat.writeBoolean 的废弃,并在 API 级别 29 及更高版本上委托给平台 API。(I9d243b/313834577
  • 创建了接受执行器的 FontsContractCompat.requestFontsI03016b/302377512
  • 还原了 LocationCompat.isMock 的废弃,并在 API 级别 31 及更高版本上委托给平台 API。(I55940b/313834577
  • 现在,通知可以标记为语音信息。(I068ab)

版本 1.15.0-alpha01

2024 年 6 月 12 日

发布了 androidx.core:core:1.15.0-alpha01androidx.core:core-ktx:1.15.0-alpha01androidx.core:core-testing:1.15.0-alpha01。此版本是在内部分支中开发的,与 Android 15 Beta 3 (android-35) 兼容。

API 变更

  • 对兼容性类进行了多项更新,以与 Android 15 SDK 保持一致。

Core 和 Core-ktx 版本 1.14

版本 1.14.0-alpha01

2024 年 5 月 1 日

发布了 androidx.core:core:1.14.0-alpha01androidx.core:core-ktx:1.14.0-alpha01androidx.core:core-testing:1.14.0-alpha01。版本 1.14.0-alpha01 包含这些提交内容

新功能

  • 将 21 作为 androidx 库的默认 minSdkVersion (I6ec7f)

API 变更

  • 弃用了其他已过时的兼容性方法。(Ie4470b/313834577
  • 废弃了已过时的兼容性方法。(I01d90b/313834577
  • 更新了 isAtLeastV(),以便针对最终确定的 V SDK 返回 true。(I6339a)

Core 和 Core-ktx 版本 1.13

版本 1.13.1

2024 年 5 月 1 日

发布了 androidx.core:core:1.13.1androidx.core:core-ktx:1.13.1androidx.core:core-testing:1.13.1。版本 1.13.1 包含这些提交内容

bug 修复

  • 修复了以下问题:显示手写工具栏时,手指点按无法切换到常规键盘 (I7f843b/332769437)

版本 1.13.0

2024 年 4 月 17 日

发布了 androidx.core:core:1.13.0androidx.core:core-ktx:1.13.0androidx.core:core-testing:1.13.0。版本 1.13.0 包含这些提交内容

自 1.12.0 以来的重要变更

  • 该库的 minSdkVersion 已提升至 19。许多兼容性 API 已被标记为已废弃,因为它们仅在 API 级别 19 之前需要。
  • 我们使用 Kotlin 重写了多个类,以便在保留 Java 兼容性的同时,更好地与 Kotlin 使用方实现互操作。
  • 移除了 FingerprintManagerCompat,该方法从 Android V 开始就没有任何操作,不应在较低版本的平台上使用。客户端应立即迁移到 BiometricPrompt
  • 添加了 PathParser,可从 SVG 路径字符串创建 Path 实例。

版本 1.13.0-rc01

2024 年 4 月 3 日

发布了 androidx.core:core:1.13.0-rc01androidx.core:core-ktx:1.13.0-rc01androidx.core:core-testing:1.13.0-rc01。版本 1.13.0-rc01 包含这些提交内容

bug 修复

  • 修复了在 API 30 及更高版本中检索初始系统栏外观的问题(I18596b/219993701

版本 1.13.0-beta01

2024 年 3 月 20 日

发布了 androidx.core:core:1.13.0-beta01androidx.core:core-ktx:1.13.0-beta01androidx.core:core-testing:1.13.0-beta01。版本 1.13.0-beta01 包含这些提交内容

API 变更

  • PathParser 现在是 finalinterpolatePathDataNodes 现在会针对不兼容的参数抛出异常,而不是返回 boolean,并且 nodesToPath 现在属于 PathParser,而不是 PathParser.PathDataNode。(I20d62)
  • FingerprintManagerCompat 在从 Android V 平台 SDK 中移除之前已被软移除。该实现将在不久之后替换为无操作,开发者应立即停止使用此类。(I7ca1b)
  • Pool 接口及其子类 SimplePoolSynchronizedPool 现在用 Kotlin 编写。现在,存储在池中的对象的泛型类型必须为非 null。(I08afe)

外部贡献

  • GestureDetectorCompat 现已废弃,因为在库的最低 SDK 版本中,平台保证会提供 GestureDetector。感谢 Jake Wharton 的贡献。(Icc4cd)
  • MarginLayoutParamsCompat 现已废弃,因为平台保证 MarginLayoutParams 会作为库的最低 SDK 版本提供。感谢 Jake Wharton 的贡献。(I4e0c3)

版本 1.13.0-alpha05

2024 年 2 月 7 日

发布了 androidx.core:core:1.13.0-alpha05androidx.core:core-ktx:1.13.0-alpha05androidx.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-alpha04androidx.core:core-ktx:1.13.0-alpha04androidx.core:core-testing:1.13.0-alpha04版本 1.13.0-alpha04 中包含这些提交内容

新功能

Kotlin 转换

  • 使用 Kotlin 重写了 androidx.core.util.Consumer 类,现在强制要求泛型 Taccept() 方法收到的内容的是否可为 null 性匹配。(Ie21e0)
  • androidx.core.util.Supplier 已转换为 Kotlin,以确保 get() 返回的类型的是否可为 null 性与泛型类型的是否可为 null 性一致。(I21e9c)
  • 使用 Kotlin 重写了 androidx.core.util.Function,以确保函数的输入和输出的可为 null 性与所用泛型类型相匹配。(I09dd7)

外部贡献

  • 感谢 Kamal Faraj 添加了 AlarmManagerCompat.canScheduleExactAlarms API (I62e95b/315440583)

版本 1.13.0-alpha03

2024 年 1 月 10 日

发布了 androidx.core:core:1.13.0-alpha03androidx.core:core-ktx:1.13.0-alpha03androidx.core:core-testing:1.13.0-alpha03版本 1.13.0-alpha03 中包含这些提交内容

API 变更

版本 1.13.0-alpha02

2023 年 11 月 29 日

发布了 androidx.core:core:1.13.0-alpha02androidx.core:core-ktx:1.13.0-alpha02androidx.core:core-testing:1.13.0-alpha02版本 1.13.0-alpha02 中包含这些提交内容

新功能

  • 添加了 OnUserLeaveHintProvider 接口,以允许任何组件接收实现画中画所需的 onUserLeaveHint 事件。这是在 Activity 1.9.0-alpha01 中通过 ComponentActivity 实现的。(I54892)

API 变更

  • 已废弃 androidx.core.os.CancellationSignal。应将用法替换为平台提供的 android.os.CancellationSignal。(Id45f6b/309499026b/309054079
  • OnMultiWindowModeChangedProviderOnNewIntentProviderOnPictureInPictureModeChangedProviderOnConfigurationChangedProviderOnTrimMemoryProvider 接口已转换为 Kotlin,以确保其监听器方法接受的 Consumer 上的泛型参数具有正确的可为 null 性(它们均为非 null)。(Ib6237)
  • 发送到添加到各自提供程序接口的 ConsumerMultiWindowModeChangedInfoPictureInPictureModeChangedInfo 类现在使用 Kotlin 编写。(Ie08e2)

依赖项更新

版本 1.13.0-alpha01

2023 年 10 月 18 日

发布了 androidx.core:core:1.13.0-alpha01androidx.core:core-ktx:1.13.0-alpha01androidx.core:core-testing:1.13.0-alpha01版本 1.13.0-alpha01 中包含这些提交内容

API 变更

  • PathParser 设为公开。该类可以根据 SVG 路径字符串创建 Path 实例。(Ic7af2b/302376846
  • Context.createAttributionContext 添加了兼容性方法。(I61dcfIbe187
  • NotificationCompatSideChannelService 标记为已废弃。(I18fd9)
  • 新增了用于差分运动快速滑动的新 API。(I46b0dIa9f68
  • 添加了适用于 VelocityTracker 的其他兼容性 API,以跟踪平台 SDK。(I32753)

bug 修复

  • 替换 Person 中的 equalshashCode 方法。(I610a5)

Core 和 Core-ktx 版本 1.12

1.12.0 版

2023 年 9 月 6 日

发布了 androidx.core:core:1.12.0androidx.core:core-ktx:1.12.0androidx.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-rc01androidx.core:core-ktx:1.12.0-rc01androidx.core:core-testing:1.12.0-rc01,这些版本没有重大变化。版本 1.12.0-rc01 中包含这些提交内容。

版本 1.12.0-beta01

2023 年 7 月 26 日

发布了 androidx.core:core:1.12.0-beta01androidx.core:core-ktx:1.12.0-beta01androidx.core:core-testing:1.12.0-beta01版本 1.12.0-beta01 中包含这些提交内容

API 变更

  • TextView 兼容类添加了 setLineHeight(unit, lineHeight) (Ia9fa9)
  • 添加了 Android 14 中的 TypedValueCompat.getUnitFromComplexDimension() (I958e8)
  • TextView 兼容类添加了 setLineHeight(unit, lineHeight) (Ib2ee1)
  • 向后移植了各种无障碍功能 API (Ic65ba)
  • 向后移植了 API 34 AccessibilityNodeInfo 方法 (I44182)
  • 将稳定版 SDK 检查从实验性阶段移出 (Ia9b35)
  • 向后移植了 AccessiiblityWindowInfo 34 个 API (I96a5d)
  • 已废弃 BuildCompat.isAtLeastU()。已改用 SDK_INT >= 34。(I4f8e7b/289269026
  • 移除了实验性 isAtLeastU() API 的用法(Ie9117b/289269026
  • BuildCompat 迁移到了 Kotlin,以增强“已废弃”标记 (I56775b/289269026)
  • TextView 兼容类添加了 setLineHeight(unit, lineHeight) (I15716)
  • 新增了 accessibilityDataSensitive 兼容性属性。(I0c6e0)
  • 指定 FLAG_NO_CREATE 时,PendingIntentCompat.getActivitygetService 可能会返回 null。(Iffdf0b/289696515
  • 更新了 API 文件,以便为兼容性抑制添加注解。(I8e87ab/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-alpha05androidx.core:core-ktx:1.12.0-alpha05androidx.core:core-testing:1.12.0-alpha05。此版本是在内部分支中开发的。

bug 修复

  • 更新了有关使用 Material 3 色相、色度和色调 (M3HCT) 参数生成颜色的 ColorUtils 类的文档。(I32979I21c8c
  • 修复了 android.os.Trace 的 replaceWith 废弃问题 (I730f9)

版本 1.12.0-alpha04

2023 年 5 月 10 日

发布了 androidx.core:core:1.12.0-alpha04androidx.core:core-ktx:1.12.0-alpha04androidx.core:core-testing:1.12.0-alpha04。这是从内部分支发布的。

版本 1.12.0-alpha03

2023 年 4 月 12 日

发布了 androidx.core:core:1.12.0-alpha03androidx.core:core-ktx:1.12.0-alpha03androidx.core:core-testing:1.12.0-alpha03。这是从内部分支发布的。

API 变更

  • 取消隐藏了 NotificationCompat.TvExtender (aosp/01c67677e9310b2cf4c536d7e951e117d6cce64a)
  • 添加了用于访问 M3HCT 参数并将 M3HCT 值转换为 ARGB 的公共方法 (aosp/06810598aa94bee731bbe0d277933b8b9614934e)
  • 添加了 NotificationManager.getCurrentInterruptionFilter (aosp/b0c6940639e35371d212a7ebd7dbf01c14fc7710)
  • NotifManagerCompat 添加了 getCurrentInterruptionFilter (aosp/516143e05f824ff49bde3c0c97344a2924867d30)
  • 废弃了 app.BundleCompat,取而代之的是 os.BundleCompat (aosp/bf6169fe9ee1113065d0cf380bd2e09f31ce0a40)
  • 添加了 TestConsumer,以便开发者在测试中记录值。(aosp/f75a4913940e710842168c832a7f57c2dcae4fdf)
  • 添加了 TestConsumer,以便开发者在测试中记录值。(aosp/67ad4e2c6488772b7c9a061ee6ca01bba23649f7)

bug 修复

  • 修复了以下 bug:unregisterGnssMeasurementsCallback() 在 Android R 以下版本中无法正常运行。(aosp/c5a97c4ee956f87d229ec892f2b8849f392e956c)

版本 1.12.0-alpha01

2023 年 3 月 8 日

发布了 androidx.core:core:1.12.0-alpha01androidx.core:core-ktx:1.12.0-alpha01版本 1.12.0-alpha01 中包含这些提交内容

新功能

  • 提供 API 来帮助开发者轻松访问 ICU 中的用户偏好设置或语言区域数据。可访问的语言区域数据包括小时周期、日历类型、温度单位和一周的第一天。

API 变更

  • 添加了新的 API LocalePreferences,以帮助开发者轻松访问语言区域数据或用户的语言区域偏好设置。

Core 和 Core-ktx 版本 1.11

版本 1.11.0-beta02

2023 年 6 月 7 日

发布了 androidx.core:core:1.11.0-beta02androidx.core:core-ktx:1.11.0-beta02androidx.core:core-testing:1.11.0-beta02版本 1.11.0-beta02 中包含这些提交内容

bug 修复

  • 更新了有关使用 Material 3 色相、色度和色调 (M3HCT) 参数生成颜色的 ColorUtils 类的文档。(I32979I21c8c
  • 修复了 android.os.Trace 的 replaceWith 废弃问题 (I730f9)

版本 1.11.0-beta01

2023 年 5 月 24 日

发布了 androidx.core:core:1.11.0-beta01androidx.core:core-ktx:1.11.0-beta01androidx.core:core-testing:1.11.0-beta01版本 1.11.0-beta01 中包含这些提交内容。

API 变更

  • 向方法 performHapticFeedback 添加了 ViewCompat 支持 (Ib02c6)
  • getDisplay 更改为 #getDisplayOrDefault (I96ff9)
  • 添加了 ContextCompat#getDisplay(Context)I7011fb/178183326
  • 添加了 ContextCompat#getContextForLanguage(Context),用于在非 activity 上下文中获取各应用语言区域(I58e75b/243457462

bug 修复

  • 阐明了 CollectionInfoCompat 文档,尤其是 isHierarchical (I14f6c)

版本 1.11.0-alpha04

2023 年 5 月 10 日

发布了 androidx.core:core:1.11.0-alpha04androidx.core:core-ktx:1.11.0-alpha04androidx.core:core-testing:1.11.0-alpha04版本 1.11.0-alpha04 中包含这些提交内容

API 变更

  • 添加了用于修复链接触摸处理问题的 LinkMovementMethodCompat (Ia632c)
  • PendingIntent.getBroadcast() 现已正确标记为 @Nullable (Ifff96b/277630907)

bug 修复

  • 修复了 DisplayManagerCompat 中的上下文泄漏问题(I3409bb/279625765
  • 添加了 SoftwareKeyboardControllerCompat,以提供直接的方法来显示和隐藏给定 View 的软件键盘。此变更回 port 了在某些 API 级别使用 WindowInsetsController API 时存在的已知问题的权宜解决方法,并提取了 WindowInsetsControllerCompat.show 的后备实现和 IME 内嵌类型的隐藏功能。(Idd0a3)

版本 1.11.0-alpha03

2023 年 4 月 19 日

发布了 androidx.core:core:1.11.0-alpha03androidx.core:core-ktx:1.11.0-alpha03androidx.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-alpha02androidx.core:core-ktx:1.11.0-alpha02androidx.core:core-testing:1.11.0-alpha02版本 1.11.0-alpha02 中包含这些提交内容

API 变更

  • NotifManagerCompat 添加了 getCurrentInterruptionFilterI8ec95b/243183646
  • 废弃了 app.BundleCompat,改用 os.BundleCompat (Idc3a2b/274577000)
  • 添加了 TestConsumer,以便开发者在测试中记录值。(I937c1)

bug 修复

  • 修复了以下 bug:在 Android R 以下版本中,unregisterGnssMeasurementsCallback() 无法正常运行。(Id1999)

版本 1.11.0-alpha01

2023 年 3 月 22 日

发布了 androidx.core:core:1.11.0-alpha01androidx.core:core-ktx:1.11.0-alpha01版本 1.11.0-alpha01 中包含这些提交内容

API 变更

  • 在 Android U 中,getTypeContentProvider API 要求调用方拥有正确的读取权限。FileProvider 现在提供默认的 getTypeAnonymous 实现,即不受限制的版本。(I4773f)
  • 为内容截取 API 添加了兼容类 (I09366)
  • 添加了 NotifCompat.Builder.setLargeIcon(Icon) (Ic0a5b)
  • NotificationManagerCompat 添加了批量通知 API。建议用户在发布多个通知时使用此 API。(I2cd7f)
  • 在 Android R 之前的平台上添加了支持执行器的 registerGnssMeasurementsCallback() (I579f8)

Core 和 Core-ktx 版本 1.10

版本 1.10.1

2023 年 5 月 10 日

发布了 androidx.core:core:1.10.1androidx.core:core-ktx:1.10.1版本 1.10.1 中包含这些提交内容

外部贡献

  • 修复了因结果为 null 而抛出 BadParcelableException 的问题 b/277434277b/278118318(由 Mygod Studio 贡献)

版本 1.10.0

2023 年 4 月 5 日

发布了 androidx.core:core:1.10.0androidx.core:core-ktx:1.10.0版本 1.10.0 中包含这些提交内容

自 1.9.0 以来的重要变更

  • 废弃了对无障碍功能对象的回收再利用。我们发现,即使在最早的受支持操作系统版本中,性能变化也微不足道。(I0a961)
  • 为 SDK 扩展版本添加了 BuildCompat 常量。(I6084c)
  • 如需了解新 API 和 bug 修复,请参阅 1.10.0 预发布版本的版本说明。

版本 1.10.0-rc01

2023 年 3 月 8 日

发布了 androidx.core:core:1.10.0-rc01androidx.core:core-ktx:1.10.0-rc01,这两个版本与上一个 Beta 版相比没有变化。

版本 1.10.0-beta01

2023 年 2 月 22 日

发布了 androidx.core:core:1.10.0-beta01androidx.core:core-ktx:1.10.0-beta01版本 1.10.0-beta01 中包含这些提交内容

API 变更

  • set/getMinMillisBetweteenContentChangesAccessibilityNodeInfoCompat API 已重命名为 set/getMinDurationBetweenContentChanges,且目前在使用期间采用 long。(f46689)
  • 添加了 NotificationCompat.bigLargeIcon(Icon) (I60855)

bug 修复

  • 修复了有关 NotificationCompat.Builder.setShowWhen() 默认值的文档 (ba52a2)
  • 修复了 AccelerateInterpolator / DecelerateInterpolator 文档中的拼写错误 (2173505)
  • 修复了 ShortcutInfoCompat 文档中的拼写错误 (44075f)
  • 使用 NestedScrollViewCoordinatorLayout 修复了向上键、向下键、空格键和按键变体的键盘操作 (bdd72e)

版本 1.10.0-alpha02

2023 年 1 月 25 日

发布了 androidx.core:core:1.10.0-alpha02androidx.core:core-ktx:1.10.0-alpha02版本 1.10.0-alpha02 中包含这些提交内容

API 变更

  • AD_SERVICES 扩展版本添加了 BuildCompat 常量 (I51d98)
  • WindowInsetsControllerCompat 中添加了 BEHAVIOR_DEFAULT。废弃了 BEHAVIOR_SHOW_BARS_BY_SWIPEBEHAVIOR_SHOW_BARS_BY_TOUCH(I17b61)

版本 1.10.0-alpha01

2023 年 1 月 11 日

发布了 androidx.core:core:1.10.0-alpha01androidx.core:core-ktx:1.10.0-alpha01版本 1.10.0-alpha01 中包含这些提交内容

API 变更

  • NotificationCompat 添加了 CallStyleId9a53b/199294989
  • 为 SDK 扩展版本添加了 BuildCompat 常量 (I6084c)
  • 添加了用于在无障碍功能节点上设置初始焦点的 API。(Id199a)
  • 添加了用于更改内容速率限制的新 API (If4ea0)
  • 针对 Android 13 中为 parcel、bundle 和 intent 引入的新 API 添加了兼容性方法。部分 ParcelCompat 方法签名已更新,可能需要在升级时更改来源才能确认新签名。(I57e94b/242048899
  • 废弃了对无障碍功能对象的回收再利用。我们发现,即使在最早的受支持版本中,性能变化也微不足道。(I0a961)
  • 针对已废弃的隐藏函数,更新了返回值类型是否可为 null (Ibf7b0)
  • 为 Point 和 PointF 添加了乘法/除法运算符重载(I8e557b/261574780

bug 修复

  • AccessibilityEvent#TYPE_ANNOUNCEMENT 添加了建议:尽量避免使用它。(I818bf)
  • 指明列表应有 1 行或 1 列供无障碍功能使用 (Ia1223)

Core 和 Core-ktx 版本 1.9.0

版本 1.9.0

2022 年 9 月 7 日

发布了 androidx.core:core:1.9.0androidx.core:core-ktx:1.9.0版本 1.9.0 中包含这些提交内容

自 1.8.0 以来的重要变更

  • 进行了更新,以提高与 Android 13 的兼容性,包括可为 null 性更改以及与框架 API 的一致性
  • 添加了 IntentSanitizer,用于在启动 intent 之前清理不安全的 intent。(Ib0be5)
  • 使用 Icon 添加了对 BigPictureStyle 的支持 (Ice26d)
  • 向在 SDK 33 及更高版本中需要授予 POST_NOTIFICATIONS 权限的 API 添加了 @RequiresPermission。(Ie542e)
  • 改进了 Android 13 无障碍功能框架 API 和兼容性 API 之间的一致性(I93c97I5a074Iedf82

版本 1.9.0-rc01

2022 年 8 月 24 日

发布了 androidx.core:core:1.9.0-rc01androidx.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 变更

bug 修复

  • 向在 SDK 33 及更高版本中需要授予 POST_NOTIFICATIONS 权限的 API 添加了 @RequiresPermission。(Ie542eb/238790278
  • 向 androidx-platform-dev 中添加了对 T 中引入的 API 的支持。()
  • 添加了对 T 中引入的 API 的支持。(I358f1)
  • 当 compat impl 无法在 API 级别 14-20 上解析时,TypefaceCompate.create(..., weight, italic) 将回退到平台 Typeface.createI1ee34b/145311058
  • 向 androidx-main am: d5747be010 添加了 AndroidX 中之前不存在的无障碍功能框架常量。(I5a074)
  • 添加了 AndroidX 中之前不存在的无障碍功能框架常量。(I93c97)

外部贡献

  • 向后移植了 Typeface#create(Typeface, int, boolean),允许通过字体系列创建具有特定粗细的字体 (I342dc)

版本 1.9.0-alpha05

2022 年 6 月 15 日

发布了 androidx.core:core:1.9.0-alpha05androidx.core:core-ktx:1.9.0-alpha05。版本 1.9.0-alpha05 是在一个不公开的预发布分支中开发的,没有公开提交内容。

API 变更

  • 更新了可为 null 性,以与 Tiramisu Beta 3 SDK 中的最终 API Surface 保持一致
  • minCompileSdk 的级别现为 33,以与 Tiramisu Beta 3 SDK 保持一致

版本 1.9.0-alpha04

2022 年 5 月 18 日

发布了 androidx.core:core:1.9.0-alpha04androidx.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-alpha03androidx.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-alpha02androidx.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-alpha01androidx.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.0androidx.core:core-ktx:1.8.0版本 1.8.0 中包含这些提交内容

自 1.7.0 以来的重要变更

  • 清理了大量可为 null 性注解,以提高 Kotlin 的易用性
  • 改进了 ShortcutInfoCompatNotificationCompat 等的平台一致性
  • 添加了新接口,使组件能够接收画中画模式和多窗口模式变更事件(由 ComponentActivity 在 activity 库中实现)
  • 改进了 MenuProvider 回调方法,包括 onPrepareMenuonMenuClosed
  • 修复了以下问题:FileProvider 在某些设备上会失败并抛出 IllegalArgumentException
  • 修复了 TypefaceCompat 在 API 29 及以上版本中应用了不正确字体粗细的问题 (b/194553426),感谢 RikkaW 的贡献

版本 1.8.0-rc02

2022 年 5 月 18 日

发布了 androidx.core:core:1.8.0-rc02androidx.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-rc01androidx.core:core-ktx:1.8.0-rc01版本 1.8.0-rc01 中包含这些提交内容

API 变更

  • 添加了针对下个预发布周期的 BuildCompat 检查(If5a8fb/229859122
  • 针对最终确定的 SDK_INT 值更新了 BuildCompat.isAtLeastT()。(Iffae0)

版本 1.8.0-beta01

2022 年 4 月 20 日

发布了 androidx.core:core:1.8.0-beta01androidx.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-alpha07androidx.core:core-ktx:1.8.0-alpha07版本 1.8.0-alpha07 中包含这些提交内容。

bug 修复

  • 现在,TypefaceCompat 将在 API 29 及以上级别上同时遵循请求的样式信息和加载的样式信息。这是加载的字体不是 FontWeight.NormalFontWeight.Bold 时发生的行为变更,因为系统将使用实际加载的粗细和样式。(#212b/194553426

外部贡献

  • 感谢 RikkaW 为确保我们在 API 29 及以上级别上的 TypefaceCompat 中正确应用 Typeface 粗细做出的贡献。#212

版本 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)
  • 恢复了之前仅依赖于 WindowInsetsControllerCompat 的 View 的变更,再次需要一个 Window,这对于管理某些窗口标记来说是必需的。废弃了 ViewCompat.getWindowInsetsController,改为使用 WindowCompat.getInsetsController,以确保使用正确的 Window(例如,如果 View 位于对话框中)。(I660aeb/219572936)
  • 更新了 core 和 appcompat 中的可为 null 性,以匹配 Tiramisu DP2 (I0cbb7)
  • BitmapCompat 中添加了一个方法,使位图缩小更流畅。(Ib706c)
  • ActivityCompat.requestDragAndDropPermissions 添加了可为 null 性注解(I0f2b0b/206113378
  • FileProvider 添加了一项解决方法,供 OEM 从清单中移除元数据。(I82f63)

bug 修复

  • 考虑了 a11y 窗格可见性状态在 <P 中的父级可见性变更 (I8e04f)

版本 1.8.0-alpha05

2022 年 2 月 23 日

发布了 androidx.core:core:1.8.0-alpha05androidx.core:core-ktx:1.8.0-alpha05版本 1.8.0-alpha05 中包含这些提交内容

API 变更

  • 更新了 androidx.core.os 类的可为 null 性(If18cdb/206113622
  • 更新了 androidx.core.app 类的可为 null 性(I657ebb/206113302
  • 更新了 androidx.core.text 类的可为 null 性(I08329b/206113384
  • AccessibilityNodeInfoCompat 添加了 ExtraData 函数(If2fc7b/137789185
  • bundleOf() 添加了零参数过载,以避免在创建空 bundle 时出现不可见的数组分配 (If7089)
  • 添加了 Continuation<T>.asFoo() 适配器,用于创建回调,来为接受通用回调类型的 Android API 编写挂起封装容器 (I6615e)
  • 添加了可为 null 的 Drawable.toBitmapOrNull 方法,以避免异常 (I2342a)

版本 1.8.0-alpha04

2022 年 2 月 9 日

发布了 androidx.core:core:1.8.0-alpha04androidx.core:core-ktx:1.8.0-alpha04版本 1.8.0-alpha04 中包含这些提交内容

API 变更

  • 添加了 OnPictureInPictureModeChangedProvider 接口,以允许任何组件接收画中画模式变更事件。这是在 Activity 1.5.0-alpha02 中通过 ComponentActivity 实现的。(I9f567)
  • 添加了 OnMultiWindowModeChangedProvider 接口,以允许任何组件接收多窗口模式变更事件。这是在 Activity 1.5.0-alpha02 中通过 ComponentActivity 实现的。(I62d91)
  • 清除了部分 androidx.core API 的可为 null 性。(Ia0e2fb/206113818)

版本 1.8.0-alpha03

2022 年 1 月 26 日

发布了 androidx.core:core:1.8.0-alpha03androidx.core:core-ktx:1.8.0-alpha03版本 1.8.0-alpha03 中包含这些提交内容

API 变更

  • WindowInsetsControllerCompat 转换为依赖于 View,而不是 Window 或平台 WindowInsetsController。这样可以改善对话框的行为(显示 IME),并确保非废弃的创建方法可以解决问题 (b/180881870)。(I29264b/207401542b/210121779
  • 清除了部分 androidx.core API 的可为 null 性。(Ib2583b/206113818
  • 修复了 performAccessibilityAction 参数的可为 null 性 (Ibbafe)
  • 添加了一个方法,可解决由以主题为键的缓存和 Theme.applyStyle 引起的 ColorStateList 问题(I9188bb/207739887
  • 更新了快捷方式可见性 API,提高了可读性 (Ia58df)
  • persistableBundleOf() 添加了零参数过载,以避免在创建空 PersistableBundle 时进行不必要的数组分配 (Icd7a4)

版本 1.8.0-alpha02

2021 年 12 月 15 日

发布了 androidx.core:core:1.8.0-alpha02androidx.core:core-ktx:1.8.0-alpha02版本 1.8.0-alpha02 中包含这些提交内容

API 变更

  • 针对日后推出的 SDK 添加了实验性 BuildCompat 方法(Iafd82b/207528937
  • 添加了文档与快捷方式相互转换的实用程序方法。(Id512c)
  • 更新了适用于快捷方式的可见性 API,让内容显示更清晰 (I86dec)
  • 添加了 OnNewIntentProviderOnConfigurationChangedProvideronTrimMemoryProvider 接口。这些接口可用于指示自定义 activity 可以将这些事件分派给任何添加监听器的组件。(If1f8bIf623bIa9295

版本 1.8.0-alpha01

2021 年 12 月 1 日

发布了 androidx.core:core:1.8.0-alpha01androidx.core:core-ktx:1.8.0-alpha01版本 1.8.0-alpha01 中包含这些提交内容

API 变更

  • 大量清理了可为 null 性注解
  • 新添加了 API ShortcutInfoCompat.Builder#setHiddenFromLauncher,用于确定是否应在启动器中隐藏快捷方式。(Ia2a71)
  • 添加了 NotificationCompat.Action#setAuthenticationRequiredIeeafab/202172887
  • 添加了 NotificationCompat.BigPictureStyle.setContentDescription (I3b483)
  • 添加了扩展函数 Map<String, Any?>.toPersistableBundle() (I82c86)

bug 修复

  • 调整了无障碍操作的滚动距离 (If74ae)
  • 移除了 Javadocs 中的硬编码语言代码 (Ie5d68)

Core 和 Core-ktx 版本 1.7

版本 1.7.0

2021 年 10 月 27 日

发布了 androidx.core:core:1.7.0androidx.core:core-ktx:1.7.0版本 1.7.0 中包含这些提交内容

自 1.6.0 以来的重要变更

版本 1.7.0-rc01

2021 年 10 月 13 日

发布了 androidx.core:core:1.7.0-rc01androidx.core:core-ktx:1.7.0-rc01版本 1.7.0-rc01 中包含这些提交内容。

版本 1.7.0-beta02

2021 年 9 月 29 日

发布了 androidx.core:core:1.7.0-beta02androidx.core:core-ktx:1.7.0-beta02版本 1.7.0-beta02 中包含这些提交内容

bug 修复

  • 现在,如果在 Lifecycle 变为 DESTROYED 状态之前移除 MenuProviderMenuHostHelper 会正确移除所有 LifecycleObserver。(Ibe2e1b/199788262
  • 更新了“未使用的应用限制常量”的说明,以便为开发者提供更清晰的说明 (I2858e)

版本 1.7.0-beta01

2021 年 9 月 15 日

发布了 androidx.core:core:1.7.0-beta01androidx.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-alpha02androidx.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 中。(Ic6914b/173814913
  • 添加了 ActivityCompat#isLaunchedFromBubble,以便与平台等效。(I6961a)
  • 添加了 LocationRequestLocationManager.hasProvider(),以便与平台等效。(I4f3e4)

bug 修复

  • 取消了在 PackageManagerCompat 中使用 lambda,以避免 LambdaDesugaring bug。(I36c87)

版本 1.7.0-alpha01

2021 年 6 月 30 日

发布了 androidx.core:core:1.7.0-alpha01androidx.core:core-ktx:1.7.0-alpha01版本 1.7.0-alpha01 中包含这些提交内容

API 变更

  • 新增了一个 API 来配置 InputConnection,以便使用 View.performReceiveContent 处理对 InputConnection.commitContent 的 IME 调用。(I3a2ad)
  • 将两个 API 功能合并为一个 (I261df)
  • 修改了两个 API 的功能,用来与未使用的应用限制功能(如权限撤消、应用休眠)搭配使用 (Ic1616)
  • 添加了三个 API,用来与未使用的应用限制功能(如权限撤消、应用休眠)搭配使用 (I606d7)
  • 向多个 Compat 类添加了可为 null 性注解(I2802ab/188452327b/189962089
  • 添加了三个 API,用来与未使用的应用限制功能(如权限撤消、应用休眠)搭配使用 (Icafee)
  • 解决了 ViewCompat 中缺少可为 null 性注解的问题(Ic346eb/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 修复

  • 将 21 移至 androidx 库的默认 minSdkVersion。(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 已发布 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.setRemoteAdapter API。
  • 添加了 Kotlin 扩展函数,以便在调用 RemoteViews 方法时避免使用反射机制。
  • 带有辅助函数函数的库,用于处理 App Widget 尺寸调整 API。

Core Performance 版本 1.0

版本 1.0.0

2024 年 1 月 10 日

发布了 androidx.core:core-performance:1.0.0androidx.core:core-performance-play-services:1.0.0androidx.core:core-performance-testing:1.0.0版本 1.0.0 中包含这些提交内容

1.0.0 的主要功能

  • 核心性能 - 为开发者提供了一种可靠的机制,使其能够在运行时识别设备的性能水平,从而帮助相应地优化应用的用户体验。
  • 核心性能 Play 服务 - Google 专用实现,可为所测试的设备和操作系统版本提供最新的媒体性能等级信息。
  • 核心性能测试 - 核心性能的测试双人。

bug 修复

  • 修复了在版本 1.0.0-beta2 中初始化 PlayServicesDevicePerformance 时发生的崩溃问题。(b/318803680)

版本 1.0.0-rc01

2023 年 12 月 13 日

发布了 androidx.core:core-performance:1.0.0-rc01androidx.core:core-performance-play-services:1.0.0-rc01androidx.core:core-performance-testing:1.0.0-rc01版本 1.0.0-rc01 中包含这些提交内容

新功能

  • 核心性能 - 更新了库实现。(DevicePerformance 通用实现)。
  • 核心性能 Play 服务 - 初始库实现。(Google 专用 DevicePerformance 实现)。
  • 核心性能测试 - 初始库实现。(包含 Core Performance 的测试双重)。

API 变更

  • DevicePerformance 专用 API 的初始 RC 版本。

版本 1.0.0-beta02

2023 年 10 月 4 日

发布了 androidx.core:core-performance:1.0.0-beta02androidx.core:core-performance-play-services:1.0.0-beta02androidx.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-beta01androidx.core:core-performance-play-services:1.0.0-beta01androidx.core:core-performance-testing:1.0.0-beta01版本 1.0.0-beta01 中包含这些提交内容

新功能

  • 核心性能 - 更新了库实现。(DevicePerformance 通用实现)。
  • 核心性能 Play 服务 - 初始库实现。(Google 专用 DevicePerformance 实现)。
  • 核心性能测试 - 初始库实现。(包含 Core Performance 的测试双重)。

API 变更

  • DevicePerformance 专用 API 的初始 Beta 版。

版本 1.0.0-alpha03

2023 年 8 月 23 日

发布了 androidx.core:core-performance:1.0.0-alpha03androidx.core:core-performance-play-services:1.0.0-alpha03androidx.core:core-performance-testing:1.0.0-alpha03版本 1.0.0-alpha03 中包含这些提交内容

新功能

  • core-performance-testing 的初始库实现,包含核心性能的测试双重。
  • 初始库实现或 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-alpha02

2024 年 9 月 4 日

发布了 androidx.core:core-splashscreen:1.2.0-alpha02。版本 1.2.0-alpha02 包含这些提交内容

bug 修复

  • SplashScreen 的主题添加了 isLightTheme 属性 (I01000b/238522114)
  • 通过 AppCompatResources 获取启动画面图标 (Ib05eb/289242141b/263972037)
  • 移除了手动说明对新平台 API 的访问权限,因为当将 R8 与 AGP 7.3 或更高版本(例如 R8 版本 3.3)搭配使用时,系统会通过 API 建模自动执行此操作;当使用 AGP 8.1 或更高版本(例如 D8 版本 8.1)时,系统会针对所有 build 自动执行此操作。建议不使用 AGP 的客户更新到 D8 8.1 或更高版本。如需了解详情,请参阅这篇文章。(Ieb9aeb/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 设备提供了默认尺寸(Ib8de8b/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 设备提供了默认尺寸(Ib8de8b/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 设备提供了默认尺寸(Ib8de8b/256678037

版本 1.0.0

2022 年 7 月 27 日

核心 SplashScreen 库为搭载 API 23 及更高版本的所有设备带来了新的 Android 12 启动画面。使用启动画面库,您的应用无需任何自定义 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 的新启动画面中引入的 bug:

  • 解决了 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 中包含这些提交内容

新功能

  • 更好的边衬区支持:启动画面现在会对所有 API 显示全屏,即使设置了 OnExitAnimationListener 也是如此。
  • postSplashScreenTheme 是可选操作:您只需在 onCreate() 前调用 activity.setTheme() 即可在显示启动画面后设置应用主题。
  • 向后支持 windowSplashScreenIconBackgroundColor 属性:您可以使用 Theme.SplashScreen.IconBackgroundwindowSplashScreenIconBackgroundColor 将背景添加到启动画面图标。
  • 已更正图标的尺寸,使其符合平台规范。

API 变更

bug 修复

  • postSplashScreenTheme 设为可选属性 (I8c4bf)

版本 1.0.0-alpha01

2021 年 6 月 30 日

发布了 androidx.core:core-splashscreen:1.0.0-alpha01

新功能

  • core-splashscreen 可向后兼容新的 Splash Screen API。此第一个 Alpha 版本包含向后移植到 API 23 的所有新 API,图标背景除外。
  • 如需了解使用信息,请参阅 androidx.core.splashscreen 中的 KDocs。

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 文件和实验性 API 文件(I8cfeeb/278769092
  • 迁移了 androidx.core 组以使用合并的公共 API 文件(Ifdef4b/278769092

Core Google Shortcut 版本 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 中包含这些提交内容

新功能

  • 支持为 Google 应用要显示的“已捐赠”快捷方式中基于 URI 的图标编制索引。

Core 和 Core-ktx 版本 1.6.0

版本 1.6.0

2021 年 6 月 30 日

发布了 androidx.core:core:1.6.0androidx.core:core-ktx:1.6.0版本 1.6.0 中包含这些提交内容

自 1.5.0 以来的重要变更

  • 添加了对解析嵌套 ColorStateList 中主题属性的支持。(I2e409b/155579892
  • 向后移植了 CheckedTextView 的可着色背景和对勾标记 (I8575c)

版本 1.6.0-rc01

2021 年 6 月 16 日

发布了 androidx.core:core:1.6.0-rc01androidx.core:core-ktx:1.6.0-rc01版本 1.6.0-rc01 中包含这些提交内容

API 变更

  • JobIntentService 已废弃,取而代之的是 WorkManager(Ic7749b/149049019

版本 1.6.0-beta02

2021 年 6 月 2 日

发布了 androidx.core:core:1.6.0-beta02androidx.core:core-ktx:1.6.0-beta02版本 1.6.0-beta02 中包含这些提交内容

bug 修复

  • 更新了 BuildCompat,现在可在最新平台上使用当前的长按超时设置 (b/185118174)
  • ContextCompatContentLoadingProgress 方法中删除了 synchronized

版本 1.6.0-beta01

2021 年 5 月 18 日

发布了 androidx.core:core:1.6.0-beta01androidx.core:core-ktx:1.6.0-beta01版本 1.6.0-beta01 中包含这些提交内容

API 变更

版本 1.6.0-alpha03

2021 年 5 月 5 日

发布了 androidx.core:core:1.6.0-alpha03androidx.core:core-ktx:1.6.0-alpha03版本 1.6.0-alpha03 中包含这些提交内容

新功能

  • 添加了对解析嵌套 ColorStateList 中主题属性的支持。(I2e409b/155579892

bug 修复

  • 在由 AppCompat 支持的视图中处理 null 自定义选择操作模式回调时,防止出现 NPE。(I033c7b/173435375

  • 在版本低于 30 的 SDK 上添加了对 setSystemBarsBehavior 的支持。(I062c8b/173203649

版本 1.6.0-alpha02

2021 年 4 月 15 日

发布了 androidx.core:core:1.6.0-alpha02androidx.core:core-ktx:1.6.0-alpha02版本 1.6.0-alpha02 中包含这些提交内容

API 变更

  • 添加了 TelephoneManagerCompatSubscriptionManagerCompat (I5568d)
  • ShortcutInfoCompat 中移除了废弃的 addCapabilityBinding 方法 (Ie8f70)
  • ShortcutInfoCompat.Builder 添加了带参数的 addCapabilityBinding setter 和不带参数的 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-alpha01androidx.core:core-ktx:1.6.0-alpha01版本 1.6.0-alpha01 中包含这些提交内容

API 变更

  • 添加了 Handler.hasCallbacks() 方法,以便与平台 SDK 保持一致(Idce1cb/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 助理通过语音查询实现这些快捷方式。可以捐赠的快捷方式数量没有限制,以这种方式捐赠的快捷方式将保存在设备中。如需了解详情,请参阅有关将动态快捷方式推送给 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-shortcutsandroidx.core;您可以开始使用 ShortcutManagerCompat 来贡献将被 Google 使用的快捷方式。
  • 新的 TrampolineActivity 将与依靠此模块的应用合并。TrampolineActivity 将用于打开此模块所贡献的快捷方式。

API 变更

  • 添加了 ShortcutInfoChangeListenerImpl,供 ShortcutManagerCompat 用于向 Firebase App Index 贡献快捷方式。

Core 和 Core-ktx 版本 1.5.0

版本 1.5.0

2021 年 5 月 18 日

发布了 androidx.core:core:1.5.0androidx.core:core-ktx:1.5.0版本 1.5.0 中包含这些提交内容

自版本 1.4.0 以来的重要变更

  • 支持新的 Insets Animation API
  • 更新了 OnReceiveContentListener,以支持富媒体内容
  • 向后移植了 WindowInsetsControllerWindowInsetsCompat API,以控制系统栏外观
  • 更新了 ActivityCompat.recreate(),以便在任何 API 级别从任何生命周期状态安全地调用此方法。
  • 添加了 API,以便通过 EditorInfoCompat 提供和检索初始周围文字,从而使 IME 应用避免出现额外的 IPC 延迟。
  • 进行了多项更新,提高了与平台 SDK API 的一致性

版本 1.5.0-rc02

2021 年 5 月 5 日

发布了 androidx.core:core:1.5.0-rc02androidx.core:core-ktx:1.5.0-rc02版本 1.5.0-rc02 中包含这些提交内容

bug 修复

  • 在版本低于 30 的 SDK 上添加了对 setSystemBarsBehavior 的支持。(I062c8b/173203649

版本 1.5.0-rc01

2021 年 3 月 24 日

发布了 androidx.core:core:1.5.0-rc01androidx.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-beta03androidx.core:core-ktx:1.5.0-beta03版本 1.5.0-beta03 中包含这些提交内容

API 变更

  • 添加了 ExecutorCompat,它会根据处理程序创建 Executor。(Ib4ca3b/181237835

版本 1.5.0-beta02

2021 年 2 月 24 日

发布了 androidx.core:core:1.5.0-beta02androidx.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-beta01androidx.core:core-ktx:1.5.0-beta01版本 1.5.0-beta01 中包含这些提交内容。

API 变更

  • 遵循关于边界兼容性/平台互操作性的 API 准则 (I7da35)
  • 将 AppCompatEditText 中的拖放事件(放置事件)与 OnReceiveContentListener 进行了集成。(Ib26c9b/175343405
  • 将新的 Insets Animation API 连接到了平台实现 (I078da)
  • 添加了新的 Insets Animation API (I8aebd)
  • 更新了 OnReceiveContentListener 和相关 API:
    • 更新了 OnReceiveContentListener,这样就可以通过 ViewCompat 在任何类型的视图中设置该方法。
    • OnReceiveContentListener 中移除了 getSupportedMimeTypes();现在,MIME 类型会作为附加参数传递给设置监听器的 ViewCompat 方法。
    • 将参数封装到对象中的 OnReceiveContentListener.onReceiveContent()
    • 以参数形式向 onReceiveContent() 添加了 linkUri,以确保与键盘图片 API 的向后兼容性。
    • onReceiveContent() 添加了 Bundle 参数,以确保与键盘图片 API 的向后兼容性,并且便于在将来改进 API。
    • 更新了 onReceiveContent(),以返回未被使用的任何内容,作为委托为默认处理的方法。
    • 从公共 API 中移除了 TextViewOnReceiveContentListener,因为现在可以通过从监听器返回任何未被使用的内容触发默认行为。
    • Ib4616b/173814913
  • 已废弃 BuildCompat.isAtLeastR (Idb37e)
  • 已将 widget.RichContentReceiverCompat 移至 view.OnReceiveContentListener。(Ifdab7b/173814913
  • 添加了 Preconditions.checkFlagsArgument。(I43952b/174181100
  • 废弃了用于出站共享的自定义菜单。(I7cd92)
  • 现在,通知可以标记为未接电话。(I14d90)
  • 添加了 PackageInfoCompat#getSignatures,用于检索软件包的证书数组(I8e9a3b/159831205

bug 修复

  • 修复了设置 BigPictureStyle.bigLargeIcon 会在新版 OS 上中断该通知的 BigPictureStyle 的 bug。(Ic623d)

外部贡献

  • ShareCompat 现在使用构造函数进行创建,而旧的工厂方法已被废弃。现在,您可以通过 Context 创建构建器和读取器,不再需要 activity。(I315b6b/173043501
  • 使用 ShareCompat 共享数据流时,设置剪辑数据并授予 URI 读取权限(I4aa31b/173137936

版本 1.5.0-alpha05

2020 年 11 月 11 日

发布了 androidx.core:core:1.5.0-alpha05androidx.core:core-ktx:1.5.0-alpha05版本 1.5.0-alpha05 中包含这些提交内容

API 变更

  • 添加了对新版 GnssStatus API 的支持 (Id8e22)
  • 添加了 FileProvider#getUriForFile 的重载以支持自定义文件名 (Ie870b)
  • 向后移植了用于控制系统栏外观的 WindowInsetsController API。(Ieb4ee)
  • 已将接受布尔值的 getFont 重命名为 getCachedFont (Iea520)
  • 向后移植了 WindowInsetsController API 中的 #hide()#show() 方法,添加到了 API 30 中 (I21573)
  • 添加了包含 cacheOnly 选项的新 API ResourcesCompat#getFont (Ic38cf)
  • 更新了适用于 Android 11 的 AndroidX 通知对话泡 API (Ib9c70)

版本 1.5.0-alpha04

2020 年 10 月 1 日

发布了 androidx.core:core:1.5.0-alpha04androidx.core:core-ktx:1.5.0-alpha04版本 1.5.0-alpha04 中包含这些提交内容

API 变更

  • 修复了使用 NotificationCompat.Builder.<init>(Context,Notification) 时出现的样式恢复不完整问题 (Ib297a)
  • 现已推出新的通知类别类型 (I9521a)

bug 修复

  • 允许从任何 API 级别的任何生命周期状态安全地调用 ActivityCompat.recreate()。(I62ddeb/160122826

版本 1.5.0-alpha03

2020 年 9 月 16 日

发布了 androidx.core:core:1.5.0-alpha03androidx.core:core-ktx:1.5.0-alpha03版本 1.5.0-alpha03 中包含这些提交内容

API 变更

  • ViewCompat 是一个实用程序类,不应被实例化。(If20fa)
  • 用于提供和检索初始周围文字的 API 已向后移植到 EditorInfoCompat。这些 API 支持 IME 应用,可避免出现额外的 IPC 延迟。(Ie3809)
  • 通过 compat 对象查询通知渠道和渠道组。(I11d18)

bug 修复

  • 对于 P 之前的版本,确保将窗格标记为对无障碍功能非常重要,且支持 CONTENT_CHANGE_TYPE_PANE_DISAPPEARED 事件。(Iaeffc)

外部贡献

  • 针对 androidx 启用了 StaticFinalBuilder 的 API lint 检查(I2b11bb/138602561

版本 1.5.0-alpha02

2020 年 8 月 19 日

发布了 androidx.core:core:1.5.0-alpha02androidx.core:core-ktx:1.5.0-alpha02版本 1.5.0-alpha02 中包含这些提交内容

新功能

  • WindowInsetsCompat API 已更新至 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 中添加了与 extra 数据相关的 API (I19567)
  • 添加了 NotificationCompat.Builder.setSettingsTextNotificationCompat.MessagingStyle.addHistoricMessage (I62bb6)
  • 更新了通知文档 (I1293f)
  • 修复了 NotificationCompat.Builder 的可为 null 性 (I932e3)
  • 添加了 NotificationChannelCompatNotificationChannelGroupCompat (Icc3b6)
  • AccessibilityNodeProviderCompat 中添加了 addExtraDataToAccessibilityNodeInfo (I26575)
  • 将 WindowInsetsCompat 更新为 Android 11 API (I3df9e)

外部贡献

  • MailTo 方法添加了 Uri 重载 (I6fa6b)
  • 添加了提供一致行为的 MailTo API 以及适用于所有 API 级别的 bug 修复(Ie9395b/159827506

版本 1.5.0-alpha01

2020 年 6 月 10 日

发布了 androidx.core:core:1.5.0-alpha01androidx.core:core-ktx:1.5.0-alpha01

新功能

  • 提供了等同于 Android R 平台 SDK API 用于 ShortcutManagerShortcutInfoAccessibilityNodeInfoDisplayCutoutGnssStatusNotification 类的功能

bug 修复

  • 明确建议检查 shouldShowPermissionRationale。
  • 更改了 AtomicFile 以使用 rename-into-place。
  • 使用指定字体的样式调整 Typeface 显示样式。(b/156853883)
  • 修复了通知构建器测试失败的问题
  • 修复了注册/取消注册 bug LocationManagerCompat

Core 和 Core-ktx Version 1.4.0

版本 1.4.0-alpha01

2020 年 5 月 20 日

发布了 androidx.core:core:1.4.0-alpha01androidx.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),有助于应用确定代码是否在独立的进程中执行(I4c83ab/153014822
  • 向后移植了 LocusId,有助于应用在不同子系统(例如内容捕获、快捷方式和通知)之间关联状态。(Ia3129)
  • 在 ViewGroup 添加了祖先序列(I5f75cb/117976097

bug 修复

  • 针对 ActivityCompat.requestPermissions() 添加了权限验证(I372ccb/122163323
  • 将 v28+ 调用提取到一个单独的静态类中,该静态类修复了在构建 app bundle 时 View#OnUnhandledKeyEventListener 发生的 NoClassDefFoundError 错误(Id3419b/153695093
  • 修复了 setChronometerCountDown 崩溃的 bug(I47282b/145770610

Core 和 Core-ktx 版本 1.3.2

版本 1.3.2

2020 年 10 月 1 日

发布了 androidx.core:core:1.3.2androidx.core:core-ktx:1.3.2版本 1.3.2 中包含这些提交内容

bug 修复

  • 允许从任何 API 级别的任何生命周期状态安全地调用 ActivityCompat.recreate()。(I62ddeb/160122826

Core 和 Core-ktx 版本 1.3.1

版本 1.3.1

2020 年 7 月 22 日

发布了 androidx.core:core:1.3.1androidx.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.0androidx.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-rc01androidx.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-beta01androidx.core:core-ktx:1.3.0-beta01版本 1.3.0-beta01 中包含这些提交内容

版本 1.3.0-alpha02

2020 年 3 月 4 日

发布了 androidx.core:core:1.3.0-alpha02androidx.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-alpha01androidx.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,可用于获取设备的物理尺寸

bug 修复

  • 改进了 NotificationCompat 中没有图标的处理操作
  • 修复了在 API 级别 23,相对于复合可绘制对象,在 TextView 上对可绘制对象进行着色的问题 (aosp/1172194)
  • 确保了基本上下文始终是封装容器
  • 修复了默认情况下 RecyclerView 不应填充 Collection[Item]Info 的问题

版本 1.2.0

版本 1.2.0

2020 年 2 月 5 日

发布了 androidx.core:core:1.2.0androidx.core:core-ktx:1.2.0版本 1.2.0 中包含以下提交内容

自 1.1.0 以来的重要变更

  • NotificationCompat 中添加了新的 API 和 bug 修复
  • 添加了可与 AndroidQ 中以向后兼容方式引入的 BlendMode 结合使用的新 API
  • 在 AccessibilityCompat 中添加了新的 API 和 bug 修复
  • 添加了可与 ShortcutInfo 结合使用的新 API
  • 添加了可与 WindowInsets 结合使用的新 API
  • 修复了 EditorInfoCompatShareCompatWakefulBroadcastReceiverInputConnectionCompat 中 28.0(支持库)与 1.1 (AndroidX) 之间的软件包密钥字符串的向后兼容性问题

版本 1.2.0-rc01

2019 年 11 月 20 日

发布了 androidx.core:core:1.2.0-rc01androidx.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-beta02androidx.core:core:1.2.0-beta02版本 1.2.0-beta02 中包含这些提交内容

bug 修复

  • 更新了 en-rCA 和 en-rXC 语言区域的翻译。

版本 1.2.0-beta01

2019 年 10 月 9 日

发布了 androidx.core:core:1.2.0-beta01androidx.core:core-ktx:1.2.0-beta01版本 1.2.0-beta01 中包含这些提交内容

API 变更

  • 增加了对使用 IconCompat 创建 NotificationCompat Action 的支持,并且废弃了以资源 ID 代表 Action 图标的公开字段(及其 getter)。(aosp/1119192)
  • 针对长整型添加了 MathUtils.clamp (aosp/1117300)
  • NotificationCompat 添加了 setChronometerCountDown (b/138601213)

bug 修复

  • 修复了地址检测中处理 Unicode 数字的问题。(aosp/1129852)

外部贡献

  • 感谢 Sergey Zakharov 为在 AndroidX 中针对 MissingBuild 和 ListenerLast 启用 API lint 检查做出的贡献!(aosp/1119191aosp/1126768

版本 1.2.0-alpha04

2019 年 9 月 5 日

发布了 androidx.core:core:1.2.0-alpha04androidx.core:core-ktx:1.2.0-alpha04。点击此处可查看此版本中包含的提交内容。

API 变更

  • 废弃了 ShortcutInfoCompat.Builder#setLongLived() 并且将其替换为接受布尔值作为参数且名称不变的新 API,以与 Android 框架的 ShortcutInfo.Builder 中的类似 API 匹配。
  • 添加了 ShortcutInfoCompat.Builder#setRank()ShortcutInfoCompat#getRank() 以与 Android 框架中的 ShortcutInfo 匹配。

bug 修复

版本 1.2.0-alpha03

2019 年 8 月 7 日

发布了 androidx.core:core:1.2.0-alpha03androidx.core:core-ktx:1.2.0-alpha03。点击此处可查看此版本中包含的提交内容。

新功能

  • 添加了 UriCompat.toSafeString(Uri) 以提供可单独从平台更新的 URI 转义。(b/130878326)
  • 添加了 Predicate<T> 接口以提供 Java 8 风格的谓词,而无需 Java 8 语言功能。

API 变更

  • removeDynamicShortuct() 变为了静态 (b/134993204)
  • 为 BlendMode 色彩滤镜创建了工厂方法 (b/135943149)
  • TraceCompat 添加了 asynccounterisEnabled (aosp/987332)
  • 取消隐藏了 WindowInsetsCompatViewDragHelper (aosp/979408)

bug 修复

  • 修复了响应 a11y 滚动调用方面存在的 NestedScrollView 滚动 bug。(aosp/971000)
  • 已切换为在 ViewCompat 实现中使用 SimpleArrayMap (aosp/1012534)
  • 修复了 FingerprintManager 在 API 级别 23 上不当检查 PackageManager 的 bug (b/124066957)

版本 1.2.0-alpha02

2019 年 6 月 13 日

发布了 androidx.core:core:1.2.0-alpha02androidx.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-alpha01androidx.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 系统手势排除 rect
  • 添加了 NotificationCompat API,决定是否允许使用系统生成的上下文操作
  • 对 NavUtils 中停用的 <activity-alias> 进行了处理
  • 添加了 AccessibilityNodeInfoCompat.setEntryKey

bug 修复

  • 修复了在 TypefaceCompat 中加载字体时发生的异常
  • 修复了各种 DayNight 问题
  • 修复了 EditorInfoCompat、ShareCompat、WakefulBroadcastReceiverInputConnectionCompat 中 28.0(支持库)和 1.1 (AndroidX) 之间的软件包密钥字符串的向后兼容性问题

版本 1.1.0

版本 1.1.0

2019 年 9 月 5 日

发布了 androidx.core:core:1.1.0androidx.core:core-ktx:1.1.0。点击此处可查看此版本中包含的提交内容。

自 1.0.0 以来的重要变更

  • 更新了无障碍功能 API 以与 Android 10 平台的无障碍功能 API 匹配
  • 添加了嵌套滚动改进;请参阅 NestedScrollingChild3NestedScrollingParent3
  • 此库不再在其 API 中公开 androidx.collection 依赖项。如果您是通过 Core 上的依赖项隐式依赖 androidx.collection 类型,将需要在您的库或应用中添加显式 androidx.collection 依赖项。此变更与源不兼容,但保留了二进制文件兼容性。Collection 依赖项仍然是 Core 的传递依赖项,但被视为实现细节而非其 API 的一部分。
  • 解决了由 androidx 重构导致的 IPC 兼容性问题(aosp/948725aosp/938269
  • 添加了对 AppCompat DayNight 的各种修复 (aosp/942956)

版本 1.1.0-rc03

2019 年 8 月 7 日

发布了 androidx.core:core:1.1.0-rc03androidx.core:core-ktx:1.1.0-rc03。点击此处可查看此版本中包含的提交内容。

bug 修复

  • 使隐藏的 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-rc02androidx.core:core-ktx:1.1.0-rc02。点击此处可查看此版本中包含的提交内容。

bug 修复

  • API 级别 23 上的 FingerprintManagerCompat#getFingerprintManagerOrNull 不应检查 PackageManager (b/124066957) (aosp/987433)
  • 修复了 AccessibilityNodeInfoCompat 中的等式比较问题 (aosp/985736)

版本 1.1.0-rc01

2019 年 6 月 5 日

发布了 androidx.core:core:1.1.0-rc01androidx.core:core-ktx:1.1.0-rc01。点击此处可查看此版本中包含的提交内容。

bug 修复

  • 使图片键盘 API 向后移植与所有以前的实现兼容 (aosp/968220)
  • 从 androidx.core:core 库依赖项中移除了 Guava ListenableFuture(b/133171974aosp/965393
  • 修复了通过嵌套滚动滑动时速度不正确的问题。(aosp/961642)
  • 添加了 TransitionDrawable 转变测试 (b/37033322)

版本 1.1.0-beta01

2019 年 5 月 7 日

发布了 androidx.core:core:1.1.0-beta01androidx.core:core-ktx:1.1.0-beta01。点击此处可查看此版本中包含的提交内容。

AndroidX 的初始版本破坏了用于进程间通信的支持库 compat API 的向后兼容性,以包的形式发送键控数据。此版本修复了该兼容性问题,恢复了使用支持库 28.0(或更低版本)构建的代码与使用 AndroidX 1.1(或更高版本)构建的代码之间的通信。

API 变更

bug 修复

  • core 测试中的 AppCompatTextView 应使用 appcompat 主题背景创建 (aosp/951636)
  • 可对 InputConnectionCompat 使用 1.0 之前版本的字符串值 (aosp/948725)
  • 使用 AndroidX 之前版本的字符串作为软件包密钥的回退交互操作工具 (aosp/938269)
  • 修复了在后台进行 DayNight 更新的相关 bug (aosp/942956)
  • 实现了 AOSP 键盘中用于无障碍服务的文本输入键 API (aosp/943897)
  • 修复了在搭载 API 级别 20 及更低版本的设备上加载字体时发生的异常
  • 对 NavUtils 中停用的 <activity-alias> 组件进行了处理 (aosp/940788)

版本 1.1.0-alpha05

2019 年 3 月 13 日

发布了 androidx.core:core:1.1.0-alpha05androidx.core:core-ktx:1.1.0-alpha05。点击此处可查看此版本中包含的完整提交内容列表。

新功能

  • 新增了 ActivityCompat.recreate() API,用于解决级别 28 之前平台的 bug (aosp/898940)
  • 新增了 LocationManagerCompat 类 (aosp/894736)

API 变更

  • 此库不再将“collection”依赖项作为其 API 的一部分提供。如果您之前通过“core”的依赖项隐式依赖于“collection”类型,将需要向您的库或应用添加显式“collection”依赖项。此变更与源代码不兼容,但保留了二进制文件兼容性。“collection”依赖项仍然是“core”的传递依赖项,但作为实现细节而非其 API 的一部分。

bug 修复

  • 修复了运行 API 级别 21 的设备上 ImageView 的默认色调模式存在的 bug

版本 1.1.0-alpha04

2019 年 1 月 30 日

发布了 androidx.core:core 1.1.0-alpha04androidx.core:core-ktx 1.1.0-alpha04

API 变更

  • 更改了 EXTRA_SHORTCUT_ID 的值以与平台保持一致 (aosp/877712)
  • NotificationCompat 添加了 CATEGORY_NOTIFICATION (aosp/861067)

bug 修复

  • 修复了 fontFamily 在搭载 API 级别 24 及更低版本的设备上无法正常运行的问题 (aosp/807054)
  • 修复了替换无障碍操作以及添加无障碍操作时未移除旧无障碍操作的 bug (aosp/848314)

版本 1.1.0-alpha03

2018 年 12 月 17 日

发布了 androidx.core 1.1.0-alpha03androidx.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 变更和 bug 修复。

新功能和 API 变更

  • NestedScrollingChild3 和 NestedScrollingParent3 向过载的 dispatchNestedScroll 和 * onNestedScroll 方法添加了“consumed”参数,使驱动嵌套滚动的视图能够更好地了解父项在每一遍嵌套滚动中所消耗*的滚动距离。
  • NestedScrollView 现在实现了 NestedScrollingChild3 和 NestedScrollingParent3,因此不能保证会调用 dispatchNestedScroll 和 onNestedScroll 的 NestedScrollingChild2 和 * NestedScrollingParent2 实现。如果开发者*指望这两者中的任意一个被调用,还应替换新嵌套滚动 3 版本的 dispatchNestedScroll 和 onNestedScroll。
  • ShortcutInfoCompat 具有以下新字段:Persons、categories 和 isLongLived。添加这些字段是为了告知它可接受各种类型*的内容。
  • 已将 SupportActivity 重命名为 ComponentActivity。如需了解详情,请参阅 androidx.activity。
  • 添加了 getMainExecutor() 方法,该方法会返回一个执行器链接,将在与该*上下文关联的主线程上运行已加入队列的任务。
  • 添加了 Resources.getFloat 的兼容性实现。
  • 向兼容性 RemoteInput 添加了结果来源。这样可让应用出于日志记录目的区分直接回复和智能回复。
  • 为 TextView TextWatcher 操作添加了 Kotlin 扩展函数。
  • 废弃了 AccessibilityNodeInfo 功能和 setter 标记;现在改用操作。
  • 向 ViewCompat 添加了 AccessibilityPane。
  • 通过添加 AccessibilityClickableSpanCompat,在 Android 版本低于 O 的设备上提供了 ClickableSpan。
  • 废弃了 AccessibilityNodeInfoCompat.setFocusable()setClickable()setLongClickable()setScrollable()setContextClickable()。添加了 AccessibilityAction
  • 添加了 ViewCompat.setAccessibilityPaneTitle()getAccessibilityPaneTitle()setScreenReaderFocusable()isScreenReaderFocusable()setAccessibilityHeading()isAccessibilityHeading(),将此 View 无障碍功能向后移植,直到 API 19。
  • 添加了 ViewCompat.enableAccessibleClickableSpanSupport(),让开发者能够使非网址 ClickableSpan 的可访问性向后兼容,直到 API 19。

bug 修复

  • 修复了在使用可下载字体的情况下网络出现故障时会导致 ResourcesCompat.getFont() 崩溃的 bug。
  • 修复了 ContentResolver 返回 null 时 TypefaceCompatApi21 出现 null 指针异常的问题。
  • 修复了 Array Utils 希望获得 ColorStateList 但获得的却是原色的类型错误。

Core-Animation 和 Core-Animation-Testing 1.0.0

版本 1.0.0

2024 年 5 月 1 日

发布了 androidx.core:core-animation:1.0.0androidx.core:core-animation-testing:1.0.0。版本 1.0.0 包含这些提交内容

1.0.0 的主要功能

androidx.core:core-animation 是 Animator API 的向后移植,包括自 API 级别 14 以来添加到平台中的所有功能。一些重要功能包括:

  • ValueAnimator#pauseValueAnimator#resume(API 级别 19)
  • ObjectAnimator.ofMultiIntObjectAnimator.ofMultiFloat(API 级别 21)
  • ValueAnimator#setCurrentFraction(API 级别 22)
  • AnimatorSet#setCurrentPlayTime(API 级别 26)
  • androidx.core:core-animation-testing 允许开发者以确定的方式测试 Animator。如需了解详情,请参阅 AnimatorTestRule

版本 1.0.0-rc01

2023 年 7 月 26 日

发布了 androidx.core:core-animation:1.0.0-rc01androidx.core:core-animation-testing:1.0.0-rc01androidx.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-alpha02androidx.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-alpha01androidx.core:core-animation-testing:1.0.0-alpha01版本 1.0.0-alpha01 中包含这些提交内容

新功能

androidx.core:core-animation 是 Animator API 的向后移植,包括自 API 级别 14 以来添加到平台中的所有功能。一些重要功能包括:

  • ValueAnimator#pauseValueAnimator#resume(API 级别 19)
  • ObjectAnimator.ofMultiIntObjectAnimator.ofMultiFloat(API 级别 21)
  • ValueAnimator#setCurrentFraction(API 级别 22)
  • AnimatorSet#setCurrentPlayTime(API 级别 26)
  • androidx.core:core-animation-testing 允许开发者以确定的方式测试 Animator。如需了解详情,请参阅 AnimatorTestRule

Core-Role 版本 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.2androidx.core:core-ktx:1.0.2。此版本包含 2 项提交内容。

AndroidX 的初始版本破坏了用于进程间通信的支持库 compat API 的向后兼容性,以包的形式发送键控数据。此版本修复了该兼容性问题,恢复了使用支持库 28.0(或更低版本)构建的代码与使用 AndroidX 1.1(或更高版本)构建的代码之间的通信。

bug 修复

  • 可对 InputConnectionCompat 使用 1.0 之前版本的字符串值 (aosp/948725)
  • 使用 AndroidX 之前版本的字符串作为软件包密钥的回退交互操作工具 (aosp/938269)

版本 1.0.1

版本 1.0.1

2018 年 11 月 7 日

core-1.0.1appcompat-1.0.2 的 bug 修复版本。

bug 修复

  • 修复了 PrecomputedTextCompat 在与 RTL AppCompatTextView 配合使用时会崩溃的 bug。b/113070424

Core-Ktx 版本 1.0.1

2018 年 11 月 5 日

发布了 androidx.core-ktx 1.0.1,并包含以下 bug 修复:

  • 修复了交换并集和交集的实现时发生的 bug。