Android studio com.android.tools.r8.a:MethodHandle.invoke和MethodHandle.invokeExact仅从android O(--min api 26)开始支持
实现“org.apache.poi:poi:5.0.0” 当我使用run“app”在模拟器/手机上运行时,上述依赖项工作正常,但 当我尝试构建apk时,我得到了以下错误 com.android.tools.r8.a:MethodHandle.invoke和MethodHandle.invokeExact仅从android O(--min api 26)开始支持 我在下面试试Android studio com.android.tools.r8.a:MethodHandle.invoke和MethodHandle.invokeExact仅从android O(--min api 26)开始支持,android-studio,dependencies,apache-poi,build.gradle,Android Studio,Dependencies,Apache Poi,Build.gradle,实现“org.apache.poi:poi:5.0.0” 当我使用run“app”在模拟器/手机上运行时,上述依赖项工作正常,但 当我尝试构建apk时,我得到了以下错误 com.android.tools.r8.a:MethodHandle.invoke和MethodHandle.invokeExact仅从android O(--min api 26)开始支持 我在下面试试 如果我删除依赖项,它就可以正常工作 如果我将minsdkversion21更新为26,那么它可以正常工作 所以我的问题
提前谢谢。现在这是不可能的。D8只允许编译使用调用自定义和方法句柄的代码,其
minSdkVersion
为26或更高版本,因为这是Android支持这些功能的第一个版本
在解除这一限制方面存在着一个新的挑战。但是,根据库中的代码,如果在API级别为25或更低的设备上运行时命中使用调用自定义和方法句柄的代码,则这可能最终成为运行时错误
您可以从Android Studio运行代码的原因是,在设备或模拟器上调试时,Android Studio会“人为地”将构建的minSdkVersion
提升到所连接设备或模拟器的版本。这是为了利用设备或模拟器支持的功能提供最佳的开发体验