Using the SDK our app developers were able to focus on creating world class User Interfaces exploiting the best native features the underlying platforms offer. All the demanding low-level communication each camera requires is solved by and encapsulated in the SDK. This also leads to a clean separation of concerns, avoidance of duplicate code and significantly reduced testing effort.
Looking deeper under the hood, a big help was the
Djinni framework. Originally developed and open sourced by the Dropbox team, Djinni dramatically simplifies mobile cross-platform development in C++ and has as such been used successfully in several grandcentrix projects. It comes with a simple to use Interface Definition Language (IDL) supporting clean API definitions, which are used across all languages (C++, Java/Kotlin, Objective-C/Swift). Djinni automatically generates header and glue code from the IDL files, which serves as the API interface between SDK and application layer. Low level annoyances such as implementing of and dealing with JNI are a thing of the past.