Readium SDK consists of three major parts:
The diagram below illustrates the high-level relationship of the parts of the architecture.
This is is the Core C++ code that manages the EPUB package, metadata, navigating and fetching resources and so on. The Core is platform-independent. In addition to the C++ core, there are also platform-dependent code layers that provide the interfaces to the platform-specific language layers:
- iOS and OSX: There is no interface layer since Objective-C can call C++ directly. However, there is an interface layer (in Objective-C) called RDServices Android: This is the Java/C JNI layer.
- There is no functional Windows Launcher as interest in it was minimal.
These are platform-specific applications that facilitate testing of the rest of the SDK as well as providing a rudimentary demonstration of how to integrate native applications with the SDK. They are deliberately rather limited and crude since it is not the intent of Readium to compete with its own members, many of whose value proposition is integrating the SDK into their sophisticated applications and workflows.
The platforms supported by Readium SDK (as of summer 2015) are
- iOS 7 and above
- Android 4.x and above
- OSX 10.7 and above
Of course, developers are welcome to tackle porting to and integration with other platforms, but the above are the only platforms against which the Readium SDK is validated and for which Launchers exist.