DONSEE东信智能 - 身份证社保卡读卡智能终端应用服务商

eastcoms@qq.com
400-6722-705
首页 > 服务支持专区 > 产品支持 > SDK开发包和软件下载

EST-100U/EST-100M有驱通用系列身份证阅读器驱动和开发包(Windows+Android)

来源:www.eastcoms.com   标签:EST-100U EST-100M 开发包   发布时间: 2022-2-24 15:57:40

广东东信智能科技有限公司EST-100M内置式嵌入式身份证阅读器模组尺寸小,散热性能好,便于安装,提供开放的应用程 序接口(SDK 开发包),适用于自助机、排队叫号机、机器人、人脸测温一体 机、访客机、人证机、通道闸机、门禁、图书借阅终端、医疗终端、银行终端等 设备里面,安装灵活,固定方便。

广东东信智能科技有限公司EST-100U/EST-100M系列身份证阅读器

EST-100U/EST-100M系列身份证阅读器开发包下载,包括Windows系统和安卓系统,支持EST-100U台式居民身份证阅读机具、EST-100M内置嵌入式身份证大模组/小模组,EST-100MR身份证二维码模组等产品。

注意:以下资源仅适用于有驱系列产品,功能只读身份证,不适应其他免驱系列产品(功能包括社保卡、IC卡、银行卡等)。

1、Windows系统开发

工厂测试软件V1.1下载

用户软件V8.0下载

Windows开发包下载

BS Web网页开发包下载


2、Android系统开发

安卓USB开发包和测试软件下载

安卓串口(包括TTL和RS232)开发包和测试APP下载

工厂测试软件V1.1

广东东信智能科技有限公司身份证阅读器软件V8.0

广东东信智能科技有限公司身份证阅读器安卓测试软件

以上为EST-100U/EST-100M系列身份证阅读器开发包相关资料下载。

安卓部分读卡代码***************************

    private void openDevice()

    {

        startIDCardReader();

        try {

            idCardReader.open(0);

            countDownLatch = new CountDownLatch(1);

            new Thread(new Runnable() {

                public void run() {

                    bCancel = false;

                    while (!bCancel) {

                        try {

                            Thread.sleep(500);

                        } catch (InterruptedException e) {

                            e.printStackTrace();

                        }

                        boolean ret = false;

                        final long nTickstart = System.currentTimeMillis();

                        try {

                            idCardReader.findCard(0);

                            idCardReader.selectCard(0);

                        }catch (IDCardReaderException e)

                        {

                            if (!bRepeatRead)

                            {

                                continue;

                            }

                        }

                        try {

                            Thread.sleep(50);

                        } catch (InterruptedException e) {

                            e.printStackTrace();

                        }

                        int cardType = 0;

                        try {

                            cardType = idCardReader.readCardEx(0, 0);

                        }

                        catch (IDCardReaderException e)

                        {

                            setResult("读卡失败,错误信息:" + e.getMessage());

                            continue;

                        }

                        if (cardType == IDCardType.TYPE_CARD_SFZ || cardType == IDCardType.TYPE_CARD_PRP || cardType == IDCardType.TYPE_CARD_GAT)

                        {

                            final long nTickCommuUsed = (System.currentTimeMillis()-nTickstart);

                            updateUIByCardType(cardType);

                            if (cardType == IDCardType.TYPE_CARD_SFZ || cardType == IDCardType.TYPE_CARD_GAT)

                            {

                                IDCardInfo idCardInfo = idCardReader.getLastIDCardInfo();

                                final String name = idCardInfo.getName();

                                final String sex = idCardInfo.getSex();

                                final String nation = idCardInfo.getNation();

                                final String born = idCardInfo.getBirth();

                                final String licid = idCardInfo.getId();

                                final String depart = idCardInfo.getDepart();

                                final String expireDate = idCardInfo.getValidityTime();

                                final String addr = idCardInfo.getAddress();

                                final String passNo = idCardInfo.getPassNum();

                                final int visaTimes = idCardInfo.getVisaTimes();

                                Bitmap bmpPhoto = null;

                                if (idCardInfo.getPhotolength() > 0) {

                                    byte[] buf = new byte[WLTService.imgLength];

                                    if (1 == WLTService.wlt2Bmp(idCardInfo.getPhoto(), buf)) {

                                        bmpPhoto = IDPhotoHelper.Bgr2Bitmap(buf);

                                    }

                                }

                                final int final_cardType = cardType;

                                final Bitmap final_bmpPhoto = bmpPhoto;

                                runOnUiThread(new Runnable() {

                                    public void run() {

                                        imgPhoto.setImageBitmap(final_bmpPhoto);

                                        setResult("读卡成功,通讯耗时(ms):" + nTickCommuUsed);

                                        textNameContent.setText(name);

                                        textSexContent.setText(sex);

                                        textBornContent.setText(born);

                                        textLicIDContent.setText(licid);

                                        textDepartContent.setText(depart);

                                        textExpireDateContent.setText(expireDate);

                                        if (final_cardType == IDCardType.TYPE_CARD_SFZ) {

                                            textNationContent.setText(nation);

                                            textAddrContet.setText(addr);

                                        } else {

                                            textPassNoContent.setText(passNo);

                                            textVisaContent.setText(String.valueOf(visaTimes));

                                        }

                                    }

                                });

                            }

                            else

                            {

                                IDPRPCardInfo idprpCardInfo = idCardReader.getLastPRPIDCardInfo();

                                final String cnName = idprpCardInfo.getCnName();

                                final String enName = idprpCardInfo.getEnName();

                                final String sex = idprpCardInfo.getSex();

                                final String country = idprpCardInfo.getCountry() + "/" + idprpCardInfo.getCountryCode();//国家/国家地区代码

                                final String born = idprpCardInfo.getBirth();

                                final String licid = idprpCardInfo.getId();

                                final String expireDate = idprpCardInfo.getValidityTime();

                                final String depart = "公部";

                                Bitmap bmpPhoto = null;

                                if (idprpCardInfo.getPhotolength() > 0) {

                                    byte[] buf = new byte[WLTService.imgLength];

                                    if (1 == WLTService.wlt2Bmp(idprpCardInfo.getPhoto(), buf)) {

                                        bmpPhoto = IDPhotoHelper.Bgr2Bitmap(buf);

                                    }

                                }

                                final int final_cardType = cardType;

                                final Bitmap final_bmpPhoto = bmpPhoto;

                                runOnUiThread(new Runnable() {

                                    public void run() {

                                        imgPhoto.setImageBitmap(final_bmpPhoto);

                                        setResult("读卡成功,通讯耗时(ms):" + nTickCommuUsed);

                                        textNameContent.setText(cnName);

                                        textENNameContent.setText(enName);

                                        textSexContent.setText(sex);

                                        textNationContent.setText(country);

                                        textBornContent.setText(born);

                                        textLicIDContent.setText(licid);

                                        textDepartContent.setText(depart);

                                        textExpireDateContent.setText(expireDate);

                                    }

                                });

                            }

                        }

                    }

                    countDownLatch.countDown();

                }

            }).start();

            bStarted = true;

            setResult("打开设备成功,SAMID:" + idCardReader.getSAMID(0));

        } catch (IDCardReaderException e) {

            e.printStackTrace();

            setResult("打开设备失败");

        }

    }

    private void closeDevice()

    {

        if (bStarted)

        {

            bCancel = true;

            if (null != countDownLatch)

            {

                try {

                    countDownLatch.await(2*1000, TimeUnit.MILLISECONDS);

                } catch (InterruptedException e) {

                    e.printStackTrace();

                }

                countDownLatch = null;

            }

            try {

                idCardReader.close(0);

            } catch (IDCardReaderException e) {

                e.printStackTrace();

            }

            bStarted = false;

        }

    }

    public void onBnStart(View view)

    {

        if (!enumSensor())

        {

            setResult("找不到设备");

            return;

        }

        bRepeatRead = checkBoxRepeatRead.isChecked();

        tryGetUSBPermission();

    }

    public void onBnStop(View view)

    {

        closeDevice();

        setResult("设备断开连接");

    }

}

 

 
QQ在线咨询