Android and Using Tin Can API (xAPI) 



Dev4X - Moonshot Education Project (V) (7).jpg

(For those of you coming to this post without prior knowledge: we are a social venture that is developing educational technology for the most vulnerable and marginalized children around the world. Up until now, though our partners mainly, we have been testing if existing electronic learning content like games and apps, could be used by completely illiterate and disconnected children to teach themselves, even when they have no access to teachers. And the resounding answer is yes. There are about 250 million kids in this situation around the world, illiterate, no access to adequate schooling, no resources, no internet and no support structures. We are developing a highly scalable solution for these children: see more on our home page)

What we now want to do is build on this experience, and start to build out a supporting open source platform around this content. The platform will consist of many differing technologies, that come together to create an on device personal learning assistant. The first component of this platform we are calling the 'content framework' —as highlighted in the image below. Essentially what this is, is a mechanism through which separate content like existing educational apps, games, ebooks, videos, etc.. will be able to be contained and accessed from a 'Launcher App' that can then track usage and other data.

We are currently looking at the best way to do this, and we are reaching out to industry leaders and experts to help us find the optimal approach.

One of the approaches we are considering is to re-author the content into possibly HTML5 using an open source authoring platform built by one of our supporters 'Adapt Learning'. We then want to include a standardized meta data structure like those in development by Edupub and Pearson (so that the platform knows what the content is about), and include within the content Tin Can triggers where feasible (so that the platform receives usage data about how the child is interacting with the content). Then build a 'Launcher App' that can display and run these re-authored apps: 

  1. Create a 'launcher app' that will display the content that is relevant to the learner based on progress, learning style, interests... 
  2. Wrap each piece of content in a wrapper that includes Meta data and Tin Can statements (or the like) to record usage and other session data.
  3. Have the 'Launcher App' be able to run these pieces of content. 
  4. Have the data generated recorded on the device for use by the platform to recommend next steps (recommendation engine). 


One of the key goals here is to create a process and framework that is easily shared and used by other educators, especially those who live locally to these children so that they can adapt existing content or create new localized + culturally-aware content for them.


  1. Can you provide some advice on the best Authoring tools that are both accessible and sophisticated?
  2. Can you provide some general advice on our current approach we are trying?
  3. Can you support us in the development of this open source platform?
  4. Is there an alternative approach we we should try?

Keep in mind that while we would love to have you on the team formally, even just a short conversation or two with such experts would help us immensely! Please feel encouraged to contact me directly here.