Description
This is an issue @vitorpamplona raised in the process of implementing #1403.
PR #1603 introduces new dependencies such as CQL evalutor, CQL engine, and CQL translator. They use HAPI version 6.0.1 which is compiled using Java11. There are certain Java11 APIs that are not available on older Android versions, especially pre Android API 26. For example, java.lang.reflect.Method.getParameterCount()
.
As a result, with this PR, the workflow library will crash on Android API level 24. Please note, however, that although the API java.lang.reflect.Method.getParameterCount()
is used in HAPI, we do not invoke code paths in HAPI using this API through our usage in the FHIR Engine and SDC library. Only in the workflow library in this PR. In other words, when I tested the FHIR Engine and SDC library with HAPI 6 on Android API level 24, there's no crash caused by the missing of this API.
Android API levels 26+ support Java11 APIs. So the above PR works fine in Android API 26+. This means that we will need to update the min api level for the workflow library to API 26.
At the moment, our gradle files are written so that all libraries share the same min api level. This will need to be changed so we do not raise API level above 24 for users of FHIR engine and SDC library.
cc: @joiskash
Metadata
Metadata
Assignees
Type
Projects
Status