This page is for developers and application architects. For a more general overview, see Using Local Device Assessment.
What is Local Device Assessment?
Local Device Assessment allows you to develop native mobile apps that can run Learnosity assessments when offline, or away from a reliable Internet connection.
Read more general information in our overview page, Using Local Device Assessment.
How does it work?
With Local Device Assessment, the Learnosity Assessment APIs run in an offline environment, in a native app on mobile devices (iOS/Android/ChromeOS) so that no Internet access is required.
Learnosity APIs rely on the device’s Web Indexed DB (a browser-based, NoSQL storage system) to store the student’s assessment information (as long as the students’ devices support in-app WebView). In this case, Learnosity APIs can be integrated seamlessly.
All of the assessments that students attempt while offline will be stored inside the Web Indexed DB, and then when there is Internet access available again, students can easily submit or synchronize their work with Learnosity cloud storage.
The following diagram shows the logical architecture for an app using Local Device Assessment:
Logical Architecture Diagram
Figure 1: Logical Architecture Diagram for Local Device Assessment
The numbers in the table above are fleshed out in the following section.
Example Scenario / Order of Implementation
In this example scenario:
"Example Corp" is an education provider that provides online assessment software for learners in the age bracket of 5-12 years old.
Example Corp provides a native mobile application named “Fun Education” allowing students to review their assessments.
Example Corp partners with Learnosity and wants to provide in-application assessment functionality, and below are the steps Example Corp takes to integrate Learnosity offline assessment with their native mobile application(s).
- Learnosity provides Example Corp with a ZIP file containing all the resources required to load the assessment in offline mode. Example Corp bundles those resources into their “Fun Education” app and re-publishes it.
- When the student successfully logs into the new “Fun Education” app on his/her mobile device, Example Corp will call the public method LearnosityApp.primeOffline to verify with the Learnosity system that the current student is a valid user, who can use the Learnosity assessment system in offline mode.
- The student reviews his/her homework assessment and downloads one with the native app on their mobile device. Example Corp has downloaded all the necessary offline Activities through Learnosity’s Data API and stored them on their server, so that when the student clicks download, the activity is immediately retrieved from Example Corp’s server and transferred to the student’s mobile device.
- The student takes the train home, and decides to complete the homework assessment during the transit. There is no Internet access on the train, however, as the Activity has been downloaded to their mobile device, they can start and complete their homework on the train in an offline state. All the work that the student does is safely saved into the mobile device's Web Indexed DB (database).
- When the student gets home (where an Internet connection is available), he/she resumes the saved homework one more time and decides to submit it so that the teacher can grade it. The student clicks on the Sync button to submit their work. When the button is clicked, Example Corp calls the public method LearnosityItems.offline().push to securely push the data that has been stored inside the device’s Web Indexed DB to Learnosity’s cloud database.
- Later in the night, the teacher logs into Example Corp’s website to view a report on the students' work.
For further reading, see a general overview of this feature in Using Local Device Assessment.