中控指纹仪在Flex页面中的使用

摘要

中控指纹仪是一个硬件设备,默认提供了在jsp,asp中使用的api接口,客户端程序是多样化的,下面说说在flex中如何使用该设备。

   在flex页面使用指纹仪前提是先做好相关的配置,具体的配置见前一篇文档:中控指纹windows xp配置文档,由于Flex页面无法直接和指纹仪提供的API通信,我们只有通过js去实现两者之间的桥梁,找到flex项目下面的index.template.html,所有Flex页面的入口都是该页面,在该页面加入加入调用指纹仪的接口js方法:代码入下

<script language="JavaScript" type="text/javascript">
    var op = "";
    function prepareDev(sign) {
        op = sign
        try {
            bio.InitEngine();
            bio.BeginCapture();
        }catch(e) {}
    }
    function EndDev(){
        try {
            bio.EndEngine();
        }catch(e) {}
    }
</script>
<script type="text/javascript" for="bio" event="OnCapture(result,template)">
    if(result == true) {
        var fingerStr = bio.GetTemplateAsString();
        if(op=="Login"||op=="Author"){
            ${application}.callActionScript(fingerStr);
        }
    }
</script>
<OBJECT classid="clsid:CA69969C-2F27-41D3-954D-A48B941C3BA7"  id="bio" ></OBJECT>


通过flex页面调用js去捕获指纹信息

在flex页面的初始化方法中加上下面代码:

private function initInfor():void
{
    ExternalInterface.addCallback("callActionScript", asFunctionByJs);
    ExternalInterface.call("prepareDev","Login");
                                    
}


private function asFunctionByJs(fingerInfo: String): void{
pwd.text = fingerInfo;
}


需要导入的包import flash.external.*;

IT家园
IT家园

网友最新评论 (0)