react-native-incall-manager 4.0.0 Android error JDK

Viewed 168

Error after upgrading react-native-incall-manager to version 4.0.0 I have an error on Android regarding JDK. It's not supporting lambda expressions.It is very strange, because JDK 1.8 is set in the project settings.

Logs from my latop:

openjdk version "11.0.14.1" 2022-02-08 LTS

OpenJDK Runtime Environment Zulu11.54+25-CA (build 11.0.14.1+1-LTS)

OpenJDK 64-Bit Server VM Zulu11.54+25-CA (build 11.0.14.1+1-LTS, mixed mode

REACT-NATIVE ERROR:

ProximityManager.java:51: error: lambda expressions are not supported in -source 7 UiThreadUtil.runOnUiThread(() -> { (use -source 8 or higher to enable lambda expressions) /Users/dragostodoroscean/Desktop/Work/freedom-mobile/node_modules/react-native-incall-manager/android/src/main/java/com/zxcpoiu/incallmanager/InCallManagerModule.java:196: error: lambda expressions are not supported in -source 7 UiThreadUtil.runOnUiThread(() -> { ^ (use -source 8 or higher to enable lambda expressions)

ANDROID STUDIO ERROR

UiThreadUtil.runOnUiThread(() -> { ^ (use -source 8 or higher to enable lambda expressions)

IMAGE JDK 1.8 IS SET

IMAGE - JDK 1.8 IS SET

Can someone tell me please what I did wrong ? I didn't find a solution for couple of days.

P.S. I'm trying to upgrade because InCallManager.setSpeakerForceOn() or setSpeakerOn() doesn't work on Android 11.

Thanks.

1 Answers

Had a similar issue with react-native-keychain. Solution was, go to the node_module, in android/build.grade, add:

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}

and then use patch-package to save the modified change to the library

Related