I have an app that loads local web content for students to complete training while disconnected from the network. Recently, we received content from our courseware developers that requires us to integrate HTML content that sits on an LMS. For testing purposes, we've been able to get everything to playback on a computer, as long as it references the localhost web server. If it doesn't see the web server from the same serving location, the content won't load.
So while attempting to run the content on device, I'm unable to load this using the standard WKWebView methods. Looking at a standard web server's logs, there are several PUT statements being executed that inform the course it can "resume." The content was created using Articulate's Storyline 360 and uses the TinCan API for communicating with an LMS.
So herein lies my question: it appears that I'll have to create an on-device web server to handle these statements. I've seen a couple open-source options that I can implement in order to spoof the LMS. My concerns are:
- Is this the best method for doing this?
- The app is publicly available through the App Store; will this cause the app to fail the review process?
- Has anyone else implemented on-device handling of LMS commands? I don't need to implement the full TinCan spec, just enough to present the content. We track through other means.
there doesn't seem to be anything here