Android离线Scorm播放器

Android离线Scorm播放器,android,android-webview,scorm,scorm2004,scorm1.2,Android,Android Webview,Scorm,Scorm2004,Scorm1.2,我需要在android应用程序中显示和跟踪scorm内容。我搜索了一些与scorm player有关的移动设备帖子,结果也被关闭了。我已经使用imsmanifest.xml显示了内容 我一直在跟踪scorm文件中的LMS。经过长时间的搜索,我发现我需要执行一个JavaScript文件,以便与scorm文件和应用程序进行交互,对于旧版本和新版本的scorm,分别执行scorm_1.2和scorm_1.3。我也执行了JavaScript,但它没有与scorm文件通信 它总是从scorm的JavaSc

我需要在android应用程序中显示和跟踪scorm内容。我搜索了一些与scorm player有关的移动设备帖子,结果也被关闭了。我已经使用imsmanifest.xml显示了内容

我一直在跟踪scorm文件中的LMS。经过长时间的搜索,我发现我需要执行一个JavaScript文件,以便与scorm文件和应用程序进行交互,对于旧版本和新版本的scorm,分别执行scorm_1.2和scorm_1.3。我也执行了JavaScript,但它没有与scorm文件通信

它总是从scorm的JavaScript为API对象调用返回空值

if (win.API != null) {                 
    return win.API; //It always null value
}
else {

    if (win.frames.length > 0) {        
        for (var i = 0; i < win.frames.length; i++) {
            if (win.frames[i] && win.frames[i].API != null) //Here too it comes null value
                alert(win.frames[i].API);
                return win.frames[i].API;
        }
    }
    if (typeof(win.opener) != "undefined" && win.opener != null)    {
        return findAPI(win.opener);             
    }
    if (win.parent != window && win.parent != win) {
        return findAPI(win.parent);             
    }
    return null;
}
如果(win.API!=null){
return win.API;//它总是空值
}
否则{
如果(win.frames.length>0){
对于(var i=0;i

由于JavaScript中的空值,它无法与Scorm_1.2中的JavaScript通信。Scorm设计用于从web浏览器而不是应用程序运行。LMS必须在弹出窗口或框架集中启动课程,并且窗口/框架集必须以JavaScript对象的形式提供SCORM API

离线和移动用例(如您的)是(aka Tin Can)背后的驱动力之一


如中所述,有提供离线支持的商业解决方案,但从技术上讲,它们绕过了SCORM规范的规则。

我是通过同步到moodle服务器的离线SCORM播放器实现的。“这真是一项艰巨的工作,但不是那么容易。”AshishNautiyal您能解释一下如何在离线播放器中同步到moodle服务器吗。迫切需要解决这个问题。它的正常数据库与正常数据库同步很好,但我的问题是如何在android webview中呈现scorm并从scorm player获取值。您必须输入scorm。这是一个大问题是的,我在webview中只使用框架集呈现html,但是javascript对象总是返回空值。