Every app contains content, sometimes lots of it. Instead of being hardcoded in an app, content should rather be separated and maintained independently. That’s was CMSes were originally intended for.
An Android CMS helps take all the dynamic content out of the codebase, making it accessible to editors and enabling live updating of the in-app content – without resubmitting the app to the Google Play store.
An Android CMS is a CMS for putting content into native mobile apps. It’s a subgroup of a bigger mobile CMS family – you might be interested in reading a comprehensive overview of those.
Features Of CMS:
An Android CMS serves two audiences: developers and editors. It should be simple enough in terms of development to compensate the efforts, and at the same time it should be accessible to those who create content. First we’ll focus on features which contribute to development simplicity.
A CMS has to come with an API.
The best way to get necessary content out of any system is to make an API request. A well-designed and well-documented API gives the developer full control: no parsing required, no redundant data coming in. An API-based access to content makes for a clean, straightforward, maintainable code.
Custom content structures
CMS shouldn’t impose any restrictions on the content model.
CMS should enable setting up content structures according to the project needs – not the other way around. The same level of freedom that any database gives should be available in a CMS, because the developer certainly knows better how to organize the content.
Content delivery infrastructure
A CMS that delivers content is better than one that doesn’t.
Setting up a full server stack is fun for the first time, but later it becomes a tiring routine. It’s nice when someone (preferably someone trustworthy) has done all the dirty work, so there’s literally zero maintenance involved. A customizable, flexible, Heroku-style delivery infrastructure is something to look for in a CMS.
Projects get done faster when a CMS comes with SDKs and similar developer tools.
This one also relates to the topic of development simplicity. Ideally, you don’t have to write boilerplate code – the CMS vendor should’ve written it for you. In addition to SDKs, things like IDE plugins, tutorials and sample apps greatly help when they exist, making the learning curve much, much smoother.