Neverending Programming Mistakes
    Wondering what’s next for npm?Check out our public roadmap! »

    ljshell

    1.1.23 • Public • Published

    ljshell


    NPM version npm download

    ----

    install

    ljshell

    Feature


    Keyboard


    • ljshell
    • ljAppObject
    • ljUserInfo
    • ljHttpInfo
    • speechInfo
    • ljAudioRecord
    • ljAudioPlayer

    Usage


    import React from 'react';
    import { ljUserInfo } from 'ljshell';
    class TestComponent extends React.Component {
        componentWillMount() {
            ljUserInfo.getInfo(0, call => {
                this.props.onGetUserInfo(call.info)
            })
            ljUserInfo.getPrivilegeInfo(nAppid, call => {
                this.props.onGetUserIsAdmin(call.result)
            });
        }
        render() {
            return (
                <div>
                    test component
                </div>
            );
        }
    }

    API


    全局自定义事件监听器

    函数:

    addEventListener : function(event,listener,once)

        添加一个事件监听器
        参数:
                event           需要监听的事件名称   对于同一个事件,可以有多个监听器
                listener        监听函数     bool function(event,params)   函数返回true,导致该事件随后的监听器不再被触发  返回false 该事件随后的监听器依旧被触发
                once            是否一次性监听  =true 当调用后将自动删除该监听函数
    

    removeEventListener : function(event,listener)

        移除一个事件监听器
        参数:
                event           需要移除监听的事件名称
                listener        需要移除监听函数
    

    fireEvent : function(event,params)

        手工触发一个事件
        参数:
                event           触发事件名称
                params          触发事件参数
    

    fireNativeEvent : function(event,eventParams,callback)

        向原生层触发一个自定义事件
        参数:
                event           触发事件名称
                eventParams     触发事件参数
                callback        原生对该事件反应后回调函数
    

    ljAppObject

        ljshell主应用对象
    

    函数:

    payOrder : function(orderno,callback)

        根据提交的订单号,支付订单
    

    closeWebView: function(res)

        退出当前web应用
        参数:
            res     当需要向应用传递返回值时指定
        函数返回:无
    

    changeToApp: function(strUrl,callback,bWait)

        切换到ljshell指定子应用
        参数:
            strUrl     子应用地址以及参数
            bWait       是否等待  可选默认等待
        函数返回:
        {
                code:int,       //=0 成功   != 0  失败
                res:object,     //每个应用返回值单独指定
        }                    
    

    changeToAppAndClose: function(strUrl,bClose,bWait)

        切换到ljshell指定子应用,并且关闭当前webview
        参数:
            strUrl      子应用地址以及参数
            bClose      是否关闭  可选默认关闭
            bWait       是否等待  可选默认等待
        函数返回:无
    

    openScan: function(callback)

        切换到扫码
        参数:
            无
        函数返回:
        {
                code:int,       //=0 成功   != 0  失败
                msg:string,
                url:string,     //扫码获取的url串
        }                    
    

    bindReturnKey: function(callback)

        绑定系统返回键  callback绑定回调函数,当绑定成功后,当返回键按下时将会会调用该回调函数
        ****回调函数必须返回一个包含keepcallback键值的对象,如果未返回将只能得到一次调用机会
        ()=>{
             //必要的处理
             return {keepcallback:1};   
        } 
    

    callCustomerCenter: function()

        打开系统客服系统
    

    openUrl: function(url,callback)

        在系统浏览器打开指定url
    

    filterUrl: function(urlRegex,openType,callback)

        指定在js中需要打开的url打开方式
        urlRegex正则表达式用以匹配url串,如果存在相同的匹配串,将替换先前的设置 
        openType指定匹配的url打开方式
        //打开方式  =0  不允许访问  =1  在当前View中打开   =2  在其他view中打开   =3  用外部浏览器打开 <0如果先前存在相同的匹配串,将从列表中删除
    

    pickFile: function(type,maxCount,filter,ext,callback,param)

        从系统中选择指定类型的文件
        type = "image"  选择图像文件
        type = "audio"  选择音频文件
        type = "video"  选择视频文件
        type = "screen"  选择屏幕截图
        type = "document"  选择文档文件
        type = "takephoto"  相机
        type = "takevideo"  录制视频
        type = "path"       选择路径
        type = "savepath"   选择保存文件路径
        maxCount>1 可以多选,最多可以选择maxCount个文件
        filter可以指定文件过滤条件
        ext可以指定保存默认后缀名
        param参数对象
            takevideo参数为{
                longvideo:boolean,  //是否录制长视频,默认短视频
                duration:number     //录制最大时长 小视频默认:15秒  长视频默认3分钟
            } 
    

    copyResToPath: function(res,path,rename,callback)

        拷贝资源文件到指定的路径
        参数:
            res     需要拷贝的资源文件
            path    拷贝的目标路径 path=/album 拷贝到系统相册
            rename  重新命名后的名字,null 不重新命名
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
        }                    
    

    copyDataToPath: function(data,path,name,callback)

        拷贝文本数据或base64编码的文件内容到指定的路径
        参数:
            data    文本数据或者经过base64编码的二进制数据   格式实例:  data:image/gif;base64,  如果是文本数据可不编码
            path    拷贝的目标路径 path=/res/image 将把图像内容拷贝到本地,并生成一个图像资源
            name    拷贝的目标文件名
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                res:string,  //生成的资源名称
        }                    
    

    getLocalUrl: function(files,callback)

        得到指定文件所在的本地Url
    

    saveObjectToLocalStorage: function(appid,key,object,callback)

        保存JS对象内容到本地存储
                appid   应用标识
                key     在本地存储中的key
                object  需要保存的对象
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
        }
    

    getObjectFromLocalStorage: function(appid,key,object,callback)

        从本地存储中读取先前保存的JS对象
                appid   应用标识
                key     在本地存储中的key
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                object:object,  //返回的对象信息
        }
    

    getClassMembers: function(classid,bStudent,callback)

        从系统中获取指定班级成员列表
                classid  班级id
                bStudent 是否仅返回学生
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                members:[
                        {
                                id:1,
                                name:'',
                                role:1,
                                grouprole:1,
                        },
                ]
        }
    

    setValueFromKey: function(key,value,callback)

        在当前应用中保存一个key/value对,value必须为string类型,在应用存在期间,一直有效,
        即使webview关闭。
                key     对应的唯一键值,如果以前存在过相同键,则覆盖键值
                value   键值,string类型
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
        }
    

    getValueFromKey: function(key,callback)

        在当前应用中获取先前保存的key/value对,
                key     对应的唯一键值
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                value:string,  //先前保存的键值
        }
    

    doShare: function(app,appFlag,type,url,title,desc,image,callback)

        像当前常用应用分享信息
    
                app     = 'qq'  分享到qq
                        = 'wx'  分享到微信
                        = 'wb'  分享到微博
    
                appFlag = 0     
                                对于qq 分享到QQ好友
                                对于微信 分享到微信好友
                                对于微博 分享到微博
                        = 1
                                对于qq 分享到QQ空间
                                对于微信 分享到微信朋友圈
                                对于微博 不支持
    
                type    分享类型
                      	//nShareType=0分享文本
                        //nShareType=1分享图片
                        //nShareType=2分享视频
                        //nShareType=3分享声音
                        //nShareType=4分享网页
                        //nShareType=8分享微信小程序
                        //nShareType=9启动微信小程序
                url     分享链接地址
                title   分享标题
                desc    分享描述
                image   相关图片,本地文件
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
        }
    

    changeViewSize: function(fullscreen,topmost,width,height,callback)

        改变当前窗口大小,仅适用于PC版本
        参数:
            fullscreen  是否全屏,如果指定了全屏,可以不指定宽高
            topmost     是否设置为最顶层窗口
            width       窗口宽度
            height      窗口高度
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
        }
    

    recoverViewSize: function(callback)

        恢复窗口大小到changeViewSize之前大小
        参数:
            无
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
        }
    

    openDoc: function(resName,callback)

        用当前系统安装应用打开指定文档
        参数:
            resName  资源名称或者本地绝对路径
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
        }
    

    resInLocal: function(resName,callback)

        指定资源本地是否存在
        参数:
            resName  资源名称或者本地绝对路径
        函数返回:
        {
                code:int,    //=0 存在   =1  不存在
                msg:string,  //提示消息
        }
    

    getNavigatorProvider: function(callback)

        得到当前系统安装的导航供应商
        参数:
            无
        函数返回:
        {
                code:int,    //=0 存在   =1  不存在
                msg:string,  //提示消息
                providers:[
                        "baidu","apple","amap","tencent"
                ]
        }
    

    NavigatorToPos: function(provider,lng,lat,callback)

        使用指定导航供应商导航到目标位置
        参数:
            provider    供应商名称
            lng         精度
            lat         纬度
        函数返回:
        {
                code:int,    //=0 存在   =1  不存在
                msg:string,  //提示消息
        }
    

    getCurrentGeoPosition: function(callback)

        使用定位设备获取当前位置
        参数:
                无
        函数返回:
        {
                code:int,    //=0 存在   =1  不存在
                msg:string,  //提示消息
                pos:{
                        lng:xxx,
                        lat:xxx,
                        ...
                },
        }
    

    getAppStatus: function(appid,callback)

        得到指定app状态
        参数:
                appid:int,      //指定appid
        函数返回:
        {
                code:int,    //=0 成功   !=0 失败
                msg:string,  //提示消息
                info:{
                   appName:string,      //应用名称
                   status:int,          //0 应用不存在,可能该用户身份不能使用该应用  =1  存在该应用
                   appType:int,         //0 内置应用  1  大厅应用   2  内部应用 3 第三方应用   4 政府应用
                   isWeb:int,           //0 非web应用  1  一般web应用  2  react应用
                   install:boolean,     //本地是否安装
                   serverVersion:int,   //服务器当前版本
                   localVersion:int,    //本地版本
                }
        }
    

    getAppConfigInfo: function(appid,callback)

        得到指定app配置信息
        参数:
                appid:int,      //指定appid
        函数返回:
        {
                code:int,    //=0 成功   !=0 失败
                msg:string,  //提示消息
                config:object
        }
    

    backToLogin: function(loginname,authcode,password)

        用指定的登录名和密码/token重新登陆,调用后该函数将关闭当前的webview
        参数:
                loginname:string,      //登录名
                authcode:string,      //token
                password:string       //密码   
        //注意: token和密码 两者只要有一个即可
        函数返回:
                函数无返回
    

    getMySchoolInfo: function(callback)

        得到自己所在学校信息,仅老师和学校管理者适用
        参数:
            无
        函数返回:
        {
            code:int,    //=0 成功   !=0 失败
            msg:string,  //提示消息
            schoolid:int,//学校ID =0 表明自身学校不存在
            name:string, //学校名称
            province:int,  //学校所在省
            city:int,   //学校所在市
            county:int, //学校所在县
            gradeno:int,//年级ID
            isSixYear:int,//是否六年制
            grade:[int,int],//学校年级列表
            class:[{id,name,grade,master,membercount},{id,name,grade,master,membercount}],//学校班级列表
        }
    

    getVideoStreamsInfo: function(video,callback)

        得到指定视频文件所有流信息列表
        参数:
            video       指定视频文件
        函数返回:
        {
            code:int,    //=0 成功   !=0 失败
            msg:string,  //提示消息
            streams:[  //流信息列表
                {
    				index:int,          //流索引
                    id:int,             //流id
                    type:string,        //媒体类型
                    format:int,         //像素或音频具体类型
                    frames:int,         //总的帧数
    				bitrate:int,        //网络比特率
    				width:int,          //视频宽度
    				height:int,         //视频高度
    				samplerate:int,     //采样率
    				bitpersample:int,   //采样深度
                },
                {...}
            ]
        }        
    

    synthesizeAudio: function(audioList,totalTime,video,callback)

        合并指定的音頻列表到輸出文件
        参数:
            audioList:[//需要合并的音频文件列表
                {
                    input:string,       //输入文件
                    format:string,      //格式  wave/mp3
                    begin:int           //开始时间 毫秒
                },
                ...
            ]   
            background:string           需要合并的背景音,可以为null
            totalTime:int               输出音频文件总时间(毫秒)  <=0 不指定 由音频文件总时间
            video:string                需要合成的原视频 不指定,则仅合成音频
        函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            output:string       //输出文件名称,如果指定了video则为合成后的视频文件,否则为音频文件
        }   
    

    getAudioDuration: function(audio,callback)

        得到指定的音頻文件时长,目前支持: mp3/wave
    参数:
        audio 音频文件名
        函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            duration:int        //返回时长  毫秒
        }   
    

    getStatusColorInfo: function(callback)

    得到全面屏状态栏当前的背景色信息
    参数:无
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            topColor:int,      //上状态栏颜色  ARGB
            bottomColor:int,   //下状态栏颜色  ARGB
            bLightText:boolean  //是否高亮文本
        }
    

    SetStatusColorInfo: function(info,callback)

    得到全面屏状态栏当前的背景色信息
    参数:
        info:{
            topColor:int,      //上状态栏颜色  ARGB
            bottomColor:int,   //下状态栏颜色  ARGB
            bLightText:boolean  //是否高亮文本
        }
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string         //提示消息
        }
    

    EnterVideoChatRoom: function(paramObj,callback)

    进入指定的视频聊天房间
    参数:paramObj
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            roomid:string       //返回房间标识
        }
    //当房间状态发生改变时,将触发VideoChatRoomStatusChanged事件,传递roomid标识
    

    LeaveVideoChatRoom: function(roomid,paramObj,callback)

    离开指定的视频聊天房间
    参数:paramObj
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string         //提示消息
        }
    

    banpaiEnterLjlx: function(userid)

    从班牌进入乐教乐学
    

    banpaiEnterDesktop: function()

    从班牌进入系统桌面
    

    enableScreenSaver: function(bEnable)

    禁止/使能 班牌进入屏保模式
    

    openFaceRecognise: function(param)

    在屏幕指定位置打开人脸识别窗口
    参数:param
        {
            left:0,
            top:0,
            width:100,
            height:100
        }
    

    closeFaceRecognise: function()

    关闭先前打开的人脸识别窗口
    

    playBeeSound: function()

    播放Bee声音
    

    banpaiEnterLjlx: function(userid)

    从班牌进入乐教乐学    
    

    getBanpaiAudioVolumn: function(callback)

    获取班牌音量大小 0-100
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            volumn:int          //音量
        }
    

    setBanpaiAudioVolumn: function(volumn,callback)

    设置班牌音量大小 
        volumn音量大小  0-100
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
        }
    

    getWifiInfo: function(callback)

    得到目前移动端所处的wifi列表 
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            info:string         //返回wifi列表,json字符串
        }
    

    banpaiQueryAttendance: function(cardID,image,type)

    请求增加指定刷卡考勤 
        cardID      刷卡ID
        image       刷卡图像md5
        type        刷卡类型 0:进,1:出,100:签到
    函数返回:无
    

    copyToClipboard: function(text,callback)

    把文本复制到剪贴板
        text        需要拷贝到剪贴板的文本
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string         //提示消息
        }
    

    copyFromClipboard: function(callback)

    从剪贴板获取文本 
    参数:无
    函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            text
        }
    

    addWatchProgress: function(resname,progress,watchCnt,forceUpdate,curSecond,callback)

    增加新的视频观看记录
    参数:
        resname:string,                 视频的唯一MD5名称,如果这个视频只有连接,没有MD5名称,那么一般使用m3u8文件名,不要包含路径
        progress:string,                按10秒一次记录的字符串,每位标志一个十秒的观看
        watchCnt:int                    是否新增观看次数,一般只是第一次调用的时候为1,播放过程中调用一律为0
        forceUpdate:boolean             调用时是否需要马上上传数据,一般退出视频播放时需要置1
        curSecond:int                   调用时当前的播放位置,下次可以通过接口获取后从当前位置播放,精确到秒
    
        函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
        }
    

    addWatchProgress2: function(resname,progress,watchCnt,forceUpdate,curSecond,userid,callback)

    增加新的视频观看记录
    参数:
        resname:string,                 视频的唯一MD5名称,如果这个视频只有连接,没有MD5名称,那么一般使用m3u8文件名,不要包含路径
        progress:string,                按10秒一次记录的字符串,每位标志一个十秒的观看
        watchCnt:int                    是否新增观看次数,一般只是第一次调用的时候为1,播放过程中调用一律为0
        forceUpdate:boolean             调用时是否需要马上上传数据,一般退出视频播放时需要置1
        curSecond:int                   调用时当前的播放位置,下次可以通过接口获取后从当前位置播放,精确到秒
        userid:int                      查看视频的用户ID =0 当前用户
    
        函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
        }
    

    changeAppRotateAngleInfo: function(angle,bOnce,callback)

    设置大厅应用旋转的角度
    参数:
        angle:int,                      旋转的角度   0   90   180   270
        bOnce:boolean,                  是否仅应用当前,应用重新启动后恢复,否则为永久
        函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
        }
    

    getPackageInfo: function(uri,callback)

    获取指定uri对应的应用的versionCode,>0 表明应用已安装,可以启动
    参数:
        uri:string,                 应用包名或者scheme名
        函数返回:
        {
            code:int,           //=0 成功   !=0 失败
            msg:string,         //提示消息
            versionCode:int     //应用包versionCode
        }
    

    launchPackageApp: function(uri,callback)

    调起指定uri对应的应用
    参数:
        uri:string,                 应用包名或者scheme名
        函数返回:
        {
            code:int,           //=0 启动成功   !=0 启动失败
            msg:string,         //提示消息
        }
    

    checkAuthPermission: function(name,onlycheck,callback)

    检测指定权限是否已开启,如果没开启,请求用户开启
    参数:
        name:string,                请求权限名称
                                    "internet"					//允许程序打开网络套接字
                                    "record_audio"				//允许程序录制音频
                                    "camera"					//允许程序拍照
                                    "video"						//允许程序录制视频
                                    "write_external_storage"	//允许程序写入外部存储
                                    "read_phone_state"			//允许程序访问电话状态
                                    "location"					//允许程序使用定位
                                    "call_phone"				//允许程序打电话
                                    "send_sms"					//允许程序发短信
                                    "photo_and_camera"
                                    "photo"
                                    "initial_access"			//必须的初始化权限 
        onlycheck:bool              是否仅检测 默认值=false 不存在则向用户请求该权限
        函数返回:
        {
            code:int,           //=0 启动成功   !=0 启动失败
            msg:string,         //
            name:string         //请求权限名称
            grant:int           //=0 未获取  =1 已获取
        }
    

    enterWakeLock: function()

    应用进入屏幕常亮状态,不熄屏
    

    leaveWakeLock: function()

    应用离开屏幕常亮状态,常规熄屏
    

    ljUserInfo

         ljshell用户信息对象
    

    函数:

    getInfo : function(userid,callback)

        获取当前用户信息,userid=0获取当前登陆用户信息
    

    getPrivilegeInfo : function(appid,callback)

        获取当前用户对于应用是否拥有权限
    

    getPrivilegeDetailInfo : function(appinfo,callback)

        获取当前用户对于应用是否拥有权限
    

    getUserNickname:function(params,callback)

        获取群组或用户的昵称
        params参数对象
        {
                groups:[groupid,groupid...],
                users:[userid,userid...],
                wait:int                     //是否等待全部结果   =0 不等待,对于本地没缓存的先返回临时结果  =1 等待,更新缓存后才返回结果
        } 
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                names:[
                {
                userid:int,
                nickname:string
                },
                ...
                ]
        }
    

    getUserLogo:function(params,callback)

        获取群组/用户/应用图标
        params参数对象
        {
                type:int,     // =0  用户图像    =1   群组图像    =2  应用图像
                userid:int   //对应的用户/群组/应用ID
        } 
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                data:string //图像的base64
        }
    

    ljDepartmentInfo

         ljshell组织架构对象
    

    函数:

    getDepartmentInfo : function(id,callback)

        获取指定ID对应的部门信息 id=0 最上层部门
        参数:
            id:int         //部门id =0  最上层部门
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                info:object  //部门信息
        }
    

    getDepartRoleList : function(callback)

        获取组织结构里职务列表
        参数:
            无
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                list:[object]  //职务列表信息数组
        }
    

    ljHttpInfo

        ljHttpInfo封装ljshell内部网络消息
    

    函数:

    fetch:function(url,param)

        从服务器获取指定url数据   url可以带全路径  对于ljshell内部请求,不用附加全域名
        param参数对象 =null 默认采用Get方法
        {
                method:"GET",//'POST'
                body:string, //对于post方法,body为post内容
                json:int,    //=0  参数列表方式  =1  采用json字段   =2  采用json格式  content-type=json =3 原生请求 不处理结果,直接把body内容传送
                wait:int,    //=0  不等待结果   =1  等待服务器结果
                timeout:int, //超时 默认20秒
                headers:     //附加头
                {
                'user-agent':string,
                ...
                }
        }
        函数返回一个promise对象
                code:int,	//返回0 成功   !=0 失败
                httpcode:int,	//返回http返回码
                msg:string,	//提示消息
                data:{}		//返回数据        
    

    query:function(url,param,callback)

        从服务器获取指定url数据   url可以带全路径  对于ljshell内部请求,不用附加全域名
        param参数对象 =null 默认采用Get方法
        {
                method:"GET",//'POST'
                body:string, //对于post方法,body为post内容
                json:int,    //=0  参数列表方式  =1  采用json字段   =2  采用json格式  content-type=json
                wait:int,    //=0  不等待结果   =1  等待服务器结果
                headers:     //附加头
                {
                'user-agent':string,
                ...
                }
        }
        函数返回调用callback,参数
                code:int,	//返回0 成功   !=0 失败
                httpcode:int,	//返回http返回码
                msg:string,	//提示消息
                data:{}		//返回数据        
    

    upload:function(files,callback)

        上传文件到服务器  files是一个文件数组
        files:[
                {
                    type:string,        //上传文件类型   'image'  'document'  'audio'  'video' 'other'
                    res:string,         //资源名
                },
                ...
        ]
    
    
        函数再上传过程中会不停的调用callback已通知指定的上传状态
        返回:
                code:int,		//返回 =0 开始上传  =1 正在上传  =2 上传成功   <0 失败
                percent:int,		//上传百分比  0-100
                msg:string,		//提示消息
                urls:[			//上传成功后返回对应的url列表信息
                        {
                                "rscname":string,
                                "local":string,
                                "url":string,
                        }
                ]      
    

    download:function(files,callback)

        从服务器下载文件  files是一个文件数组
        files:[
                resName,        //需要下载的文件URI
                resName
                ...
        ]
        函数在下载过程中会不停的调用callback已通知当前的下载状态
        返回:
                code:int,		//返回 =0 开始下载  =1 正在下载  =2 下载成功   <0 失败
                percent:int,		//上传百分比  0-100
                msg:string,		//提示消息
                urls:[			//下载成功后返回对应的url列表信息
                        {
                                "rscname":string,
                                "local":string,
                                "url":string,
                        }
                ]      
    

    downloadvideo:function(url,localfile,param,callback)

        从服务器下载m3u8视频
        url:
            m3u8视频地址
        localfile:
            保存本地文件名
        param:
            {
                workpath:string,            //工作路径,不传采用localfile所在路径
                resname:string,             //如果不为null,则自动根据资源名称获取m3u8地址,此时url可为null
            }
        函数在下载过程中会不停的调用callback已通知当前的下载状态
        返回:
                code:int,		//返回 =0 开始下载  =1 正在下载  =2 下载成功   <0 失败
                percent:int,		//上传百分比  0-100
                msg:string,		//提示消息
    

    getResourceUrl(resname,callback)

        得到指定资源名对应的外网url地址
        返回:
        {
                code:int,                   //返回 =0 成功  !=0 失败
                msg:string,                 //提示消息
                url:string                  //对应的url地址
        }    
    

    getResourceLocalUrl(resname,callback,width,height,viewWidth,viewHeight)

        得到指定资源名对应的内网url地址,如果本地不存在,将下载指定文件成功后再触发回调
        返回:
        {
                code:int,                   //返回 =0 成功  !=0 失败
                msg:string,                 //提示消息
                url:string                  //对应的url地址
        }    
    

    getResourceData(resname,callback)

        得到指定资源名对应的内容数据base64编码
        返回:
        {
                code:int,                   //返回 =0 成功  !=0 失败
                msg:string,                 //提示消息
                data:string                 //对应的内容base64编码数据
        }     
    

    queryPreviewDoc(resname,callback)

        請求指定的资源预览图像文件列表
        参数:
            resName  资源名称
        函数返回:
        {
                code:int,    //=0 成功   =1  失败
                msg:string,  //提示消息
                files:[
                   {
                       res:string,  //资源名称
                       width:0,     //宽度
                       height:0,    //高度
                   },
                   ...
                ]
        }            
    

    speechInfo

        ljshell语音评测信息类
    

    函数

    initEvalute(callback) //评测初始化,成功后才能开始评测

        调用参数: 无
        注意:
                callback               将统一用于initEvalute,startEvalute,endEvalute回调返回
        当状态发生改变时返回:
        code:int,			//返回0 成功   !=0 失败
        msg:string,			//提示消息
        status:int,			//当前状态  =100 表明评测初始化
    

    startEvalute(type,language,text,userdata,callback) //开始评测

        调用参数:
        {
                type:string,		//类型
                language:string,	//语言
                text:string,		//评测文本
                userdata:userdata,      //用户数据,可为任意类型
        }                        
        当状态发生改变时返回:
        code:int,			//返回0 成功   !=0 失败
        msg:string,			//提示消息
        userdata:userdata,              //用户数据
        status:int,			//当前状态  =0  录音过程中   =1 录音完成   =2  评测完成 
        rettype:int,			//评测结果串类型  =0 正常串  =1  json串  =2  xml串
        result:string,		        //评测结果
        audio:string,		        //录音数据base64编码
    

    endEvalute //结束评测

        调用参数:
                无
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:int,			//当前状态  =200 表明结束评测
    

    getTranslationFromWord(word,callback) //得到一个单词的相关翻译和读音

        调用参数:
                word
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                data:object                     //单词翻译相关结构
    

    startRecognise(realtime,resname) //开始语音识别

        调用参数:
        {
                realtime:bool,		//是否实时评测
                resname:string,	        //直接采用语音资源文件评测
        }                        
    

    endRecognise() //结束语音识别

        调用参数:
                无
        开始识别后到结束,将定期调用startRecognise设置的回调函数
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                res:{
                     status:int,                //识别状态
                                                enum{
                                                        status_unknown = 0,
                                                        status_start = 1,
                                                        status_end = 2,
                                                        status_process = 3,
                                                        status_error = -1,
                                                };
                     text:string,               //当前识别出的文本   
                }
    

    ljMathProblem

        ljshell数学判题类
    

    函数

    takeMathPhoto(callback) //打开相机拍题

        调用参数:
                无
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                image:string,			//最终生成的本地图片名称
    

    judgeMathProblem(image,callback) //把指定的图像提交判题,返回结果

        调用参数:
                image                           //本地文件名称
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                result:object,			//最终生成的判题结果
    

    ljAudioRecord

        ljshell音频原生录音操作类
    

    函数

    startRecord(callback) //开始录音

        调用参数:
                无,回调直接调用StartRecord时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"start",                 //提示返回状态          
    

    pauseRecord() //暂停录音

        调用参数:
                无,回调直接调用StartRecord时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"pause",                 //提示返回状态
                url:"http://xxxx"               //返回当前可播放的录音当前数据url
    

    resumeRecord() //恢复录音

        调用参数:
                无,回调直接调用StartRecord时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"resume",                 //提示返回状态
    

    stopRecord() //停止录音

        调用参数:
                无,回调直接调用StartRecord时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"stop",                 //提示返回状态
    

    cancelRecord() //取消录音

        调用参数:
                无,回调直接调用StartRecord时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"cancel",                 //提示返回状态
    

    resetRecord() //重置当前录音

        调用参数:
                无,回调直接调用StartRecord时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"reset",                 //提示返回状态
    

    setAudioPosition(fSec) //定位到新位置,重新开始录音

        调用参数:
                fSec  单位秒,定位到指定时间位置,回调直接调用StartRecord时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"position",              //提示返回状态
    

    onCallback() //当录音状态发生改变是调用

        调用参数:
                主动返回,无需调用,回调直接调用StartRecord时设置的回调
        停止前(调用stopRecord之前)
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"onupdate",              //提示返回状态
                duration:1.2,                   //当前已录制的时长(单位:秒)
                volume:123,                     //当前录制音量
        停止后(调用stopRecord之后)
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"onpercent",             //提示编码进度  =100 成功  
                percent:12,                     //当前进度
                url:"",                         //最终录音文件Url地址
                name:"",                        //最终录音文件ID
                showname:"",                    //最终录音文件显示名称
    

    回调编写实例

        onCallback(callinfo){
           let res = {};
           if (callinfo.code !== 0){
               console.log("录制出错了",callinfo.msg);
               res.keepcallback = 0;//出错了,无需保持回调,下次不会再调用了
           }     
           else{
              switch(callinfo.status){
                case "start":
                   console.log("开始录制了。。。");
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "pause":
                   console.log("暂停录制了。。。,可播放的地址:",callinfo.url);
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "resume":
                   console.log("录制重新恢复了。。。");
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "reset":
                   console.log("录制重置成功了。。。");
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "onupdate":
                   console.log("录制中有数据了:数据长度:",callinfo.duration,"当前音量:",callinfo.volume);
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "stop":
                   console.log("录制已成功停止。。。,可播放的地址:",callinfo.url,"本地文件:",callinfo.file);
                   res.keepcallback = 0;//已经停止录音,无需保持回调,下次不会再调用了
                   break;
                default:
                   res.keepcallback = 0;//不应该运行到这,无需保持回调,下次不会再调用了
                   break;
              }
           }
           return res;
        }                
    

    ljAudioPlayer

        ljshell音频播放类
    

    函数

    open(res,callback) //打开指定的音频资源

        调用参数:
                res 音频资源名
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                id:string,                      //返回id
                status:"loading/start/failed",  //提示返回状态    返回start之后表明打开成功     
                //成功打开以后会不停地调用该回调 返回当前的播放状态  playing 
    

    close(id) //停止音频播放

        调用参数:
                id 先前打开的音频id,回调直接调用open时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                id:string,
                status:"closed",                 //提示返回状态
    

    pause(id) //暂停播放

        调用参数:
                id 先前打开的音频id,回调直接调用open时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                id:string,
                status:"pause",                 //提示返回状态
    

    resume(id) //继续播放

        调用参数:
                id 先前打开的音频id,回调直接调用open时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                id:string,
                status:"resume",                //提示返回状态
    

    getPos(id) //得到当前播放位置

        调用参数:
                id 先前打开的音频id,回调直接调用open时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"getpos",                //提示返回状态
                id:string,
                pos:int,                        //返回当前位置
    

    duration(id) //得到当前播放位置

        调用参数:
                id 先前打开的音频id,回调直接调用open时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                status:"getduration",           //提示返回状态
                id:string,
                duration:int,                   //返回音频总时间
    

    setPos(id,pos) //设置当前播放位置

        调用参数:
                id 先前打开的音频id
                pos 当前播放位置,单位毫秒,回调直接调用open时设置的回调
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                id:string,
                status:"setpos",                //提示返回状态
    

    onCallback() //当播放状态发生改变时调用

        调用参数:
                主动返回,无需调用,回调直接调用open时设置的回调
        停止前(调用close之前)
        返回:
                code:int,			//返回0 成功   !=0 失败
                id:string,                      //对应音频id
                msg:string,			//提示消息
                status:"playing",               //提示返回状态
                pos:1231,                       //当前播放位置(单位:毫秒)
    

    回调编写实例

        onCallback(callinfo){
           let res = {};
           if (callinfo.code !== 0){
               console.log("播放出错了",callinfo.msg);
               res.keepcallback = 0;//出错了,无需保持回调,下次不会再调用了
           }     
           else{
              switch(callinfo.status){
                case "start":
                   console.log("开始播放了。。。");
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "pause":
                   console.log("暂停播放了");
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "resume":
                   console.log("播放恢复了。。。");
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "playing":
                   console.log("正在播放:当前位置:",callinfo.pos);
                   res.keepcallback = 1;//保持回调,以便下次还能触发
                   break;
                case "stop":
                   console.log("播放停止。。。");
                   res.keepcallback = 0;//已经停止播放,无需保持回调,下次不会再调用了
                   break;
                default:
                   res.keepcallback = 0;//不应该运行到这,无需保持回调,下次不会再调用了
                   break;
              }
           }
           return res;
        }                
    

    ljGifObject

        ljshell gif文件操作类
    

    函数

    open(res,callback) //打开指定的gif文件资源

        调用参数:
                res gif文件资源名
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                id:string,          //返回id
    

    close(id) //关闭先前打开的gif文件

        调用参数:
                id 先前打开的gif文件id
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
    

    getFrameCount(id) //得到gif文件总的帧数

        调用参数:
                id 先前打开的gif文件id
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                count:int           //返回总帧数
    

    getGifDimension(id) //得到gif文件宽高信息

        调用参数:
                id 先前打开的gif文件id
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                width:int,          //返回宽度
                height:int          //返回高度
    

    getGifFrameImage(id,index) //得到gif文件指定帧图像信息

        调用参数:
                id 先前打开的gif文件id
                index帧索引
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                width:int,          //返回宽度
                height:int,         //返回高度
                duration:int,       //该帧延时,单位毫秒
                image:string       //本地文件名,格式png格式
    

    ljTaobao

        ljshell taobao应用操作类
    

    函数

    login(callback) //调起淘宝应用,进行登陆授权

        调用参数:
                无
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string,			//提示消息
                id:string,          //返回openid
    

    logout(callback) //调起淘宝应用,取消当前的登陆授权

        调用参数:
                无
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string			//提示消息
    

    openTrade(url,callback) //在淘宝中打开指定的商品连接

        调用参数:
                url 商品链接地址
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string			//提示消息
    

    ljAdInfo

        ljshell 广告操作类
    

    函数

    createADObject(appid,subid,page,index,callback) 创建指定广告位的广告对象

        调用参数: 
            appid		广告位对应应用ID				int
            subid		广告位对应应用子ID				int
            page		广告位对应页面索引				int
            index		广告位对应位置索引				int
    
        返回参数json:
            code:int,			//=0 成功   =1  失败
            msg:string,			//提示消息
            object:string		//成功返回广告位对象
            //成功后,当广告对象需要显示时会再次调用该回调,注意,一个广告位可能会多次触发广告显示,每次显示不同的广告,adid不同
    

    closeADObject(object,callback) 关闭先前创建的广告位对象

        调用参数:
            object		广告位对象				string
    
        返回参数json:
            code:int,		//=0 成功   =1  失败
            msg:string		//提示消息
    

    reportADStatus(object,adid,type,callback) 当广告对象状态发生改变时调用

        调用参数:
            object		广告位对象				string
            adid		广告对象标识			string
            type		状态类型				int
                        =1			广告被点击
    
        返回参数json:
            code:int,		//=0 成功   =1  失败
            msg:string		//提示消息
    

    presentcallback当广告位有广告需要展示时,触发createADObject对应的回调

        调用参数:
            code:int,		//=0 成功   =1  失败
            msg:string		//提示消息
            object		广告位对象						string
            adid		广告位广告对象标识				string
            slotType	广告位类型						int
                        ADSLOT_TYPE_LAUNCHSCREEN = 0,			//开屏
                        ADSLOT_TYPE_INFOSTREAM = 1,				//信息流
                        ADSLOT_TYPE_INTERSTITIAL = 2,			//插屏
                        ADSLOT_TYPE_BANNER = 3,					//Banner
                        ADSLOT_TYPE_MARKAD = 4					//弹框小广告
            showType	广告位展示类型					int
                        ADSHOW_TYPE_IMAGE = 0,					//广告位展示类型 全图    一张大图
                        ADSHOW_TYPE_VIDEO = 1,					//广告位展示类型 全视频
                        ADSHOW_TYPE_IMAGETEXT = 2,				//广告位展示类型 图+文字  -- 左右
                        ADSHOW_TYPE_TEXTIMAGE = 3,				//广告位展示类型 文字+图  -- 左右
                        ADSHOW_TYPE_IMAGEUPTEXT = 4,			//广告位展示类型 图+文字  -- 文字在图上方
                        ADSHOW_TYPE_IMAGEDOWNTEXT = 5,			//广告位展示类型 图+文字  -- 文字在图下方
                        ADSHOW_TYPE_SMALLIMAGEUPTEXT = 6,		//三小图+图  --文字在图上方
                        ADSHOW_TYPE_SMALLIMAGEDOWNTEXT = 7,		//三小图+图  --文字在图下方
                        ADSHOW_TYPE_IMAGEDOWNIMAGETEXT = 8,		//一张大图+小图+文字  --小图+文字在大图下方
                        ADSHOW_TYPE_IMAGEUPIMAGETEXT = 9,		//一张大图+小图+文字  --小图+文字在大图上方
                        ADSHOW_TYPE_VIDEODOWNIMAGETEXT = 10,	//视频+小图+文字  --小图+文字在视频下方
                        ADSHOW_TYPE_VIDEOUPIMAGETEXT = 11		//视频+小图+文字  --小图+文字在视频上方
            transparent	是否透明背景					boolean
            stretch		是否拉伸 否则维持宽高比			boolean
            width										int
            height										int
                        广告位大小  (推荐大小,主要用作宽高比)
            imageWidth									int
            imageHeight									int
                        大图图像大小  (推荐大小,主要用作宽高比)
            showadFlag	是否显示广告标识				int
                            =0 不显示广告标识 =1 左下角,如果存在文本描述,则在下面单起一行 。。。
            adFlagName	显示广告标识名称   默认:"广告"	string
            priority	广告位优先级  0-100				int
            mainImage	大图/视频/第一张小图图像		string
            middleImage	第二张小图图像					string
            lastImage	第三张小图图像					string
            backvideoImage	托底图片,如果视频不能播放,显示该图片	string
            logo		角标							string
            title		广告标题						string
            content		广告内容						string
    

    ljDigitalPen

    点阵笔数据操作类
    

    函数

    InitDigitalPen (options,callback) //初始化点阵笔数据类

        调用参数:
                options:object 点阵笔初始化参数
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string			//提示消息
        callback
                设置该回调后,其后当有笔迹消失时调用
    

    Start(callback) //初始化点阵笔SDK

        调用参数:
                无
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string			//提示消息
    

    Stop(callback) //停止接收点阵笔的信息

        调用参数:
                无
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string			//提示消息
    

    CloseDigitalPen(callback) //释放点阵笔数据类

        调用参数:
                无
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string			//提示消息
    

    SetDigitalPenStatus(param,callback) //设置点阵笔数据

        调用参数:
                param:object       //设置参数
        返回:
                code:int,			//返回0 成功   !=0 失败
                msg:string			//提示消息
    

    SpeechSynthesizer

    语音合成相关操作类
    

    函数

    init (vendor,props,callback) //初始化语音合成

        调用参数:
                vendor:int,		//语音合成厂商id
                props:object	        //初始化属性
        返回:
                code:int,		//返回0 成功   !=0 失败
                msg:string,		//提示消息
                result:object	        //返回结果
    

    settings(vendor,settings,callback) //设置语音合成相关参数

        调用参数:
                vendor:int,		//语音合成厂商id
                settings:object	        //相关设置属性
        返回:
                code:int,		//返回0 成功   !=0 失败
                msg:string,		//提示消息
                result:object	        //返回结果
    

    speek(vendor,info,callback) //语音合成发声

        调用参数:
                vendor:int,		//语音合成厂商id
                info:object		//发声属性
        返回:
                code:int,		//返回0 成功   !=0 失败
                msg:string,		//提示消息
                result:object	        //返回结果
    

    close(vendor,props,callback) //关闭合成发声,释放内部资源

        调用参数:
                vendor:int,		//语音合成厂商id
                props:object	        //关闭属性
        返回:
                code:int,		//返回0 成功   !=0 失败
                msg:string,		//提示消息
                result:object	        //返回结果
    

    Keywords

    Install

    npm i ljshell

    DownloadsWeekly Downloads

    114

    Version

    1.1.23

    License

    ISC

    Unpacked Size

    98.8 kB

    Total Files

    19

    Last publish

    Collaborators

    • avatar