Editions
Richie Editions App SDKs
Developer guide for app makers
The Richie Editions reader is available as a native SDK, ready to integrate into any iOS or Android app.
The easiest way to get started is to clone one of our demo apps from GitHub. See below for platform-specific instructions.
iOS
Fetch the demo app from the richiefi/editions-sdk-example-ios repository at GitHub and follow the instructions in README.md
to build and run it. An API reference is also available.
Android
Fetch the demo app from the richiefi/editions-sdk-example-android repository at GitHub and follow the instructions in README.md
to build and run it. An API reference is also available.
fi.richie:richiesdk
is the recommended artifact for including the Android SDKs. It contains all Richie SDKs, i.e. Ads, Editions, and Books. If you only need Editions in your app, you can exclude Books:
implementation('fi.richie:richiesdk:yyyymm.xx') {
exclude group: 'fi.richie', module: 'booklibraryui'
}
Authentication and Entitlements
Customers in the Richie Editions systems are authorized using a JSON Web Token (JWT). Typically, the app will receive the JWT from the publisher's backend system based on the customer's login credentials. The JWT is then passed to the SDK by implementing a TokenProvider
that gets called by the SDK when a token is needed to complete an action the customer initiated. The demo apps include an example implementation of a TokenProvider
that uses a hard-coded JWT that allows access to limited demo content.
In a production system, the JSON payload would use the following format:
{
"iat": 1516239022,
"exp": 1516339022,
"ent": ["product_a", "product_b"]
}
The iat
and exp
fields are the standard JWT fields for the issued at and expiration times. The Richie Editions backend will verify that the token is valid for the current time. The ent
field is an array of entitlements that the customer has. Each entitlement maps to one or more Richie Editions products. Multiple entitlements can map to the same product, and a single entitlement can map to multiple products. Richie maintains the entitlement-to-product mapping in the backend configuration.
The tokens are signed by the publisher with the ES256
or ES384
signature algorithm. The public key will be configured in the Richie Editions backend.