OffsetDateTime.now() 需要 API 26。

20

我需要使用 setStartTimestamp(OffsetDateTime startTimestamp) 方法,但我的 minSdk 是 21,所以它显示了 Call requires API level 26。是否有任何方法可以在较低的API上使用 OffsetDateTime?

2个回答

15

您可以使用Java 8+ API 解糖支持(Android Gradle 插件4.0.0+)

这在此链接中有描述

您只需像这样修改您的应用模块中的build.gradle文件:

android {
  defaultConfig {
    // Required when setting minSdkVersion to 20 or lower
    multiDexEnabled true
  }

  compileOptions {
    // Flag to enable support for the new language APIs
    coreLibraryDesugaringEnabled true
    // Sets Java compatibility to Java 8
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

dependencies {
  coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.0.9'
}

11

java.time API在Android中需要API 26。

对于旧的API级别,您可以使用ThreeTenABP,它是Java 6的JSR-310 java.time后移版本的Android版本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接