• 廣東明創智慧科技有限公司是中國專業的身份證閱讀器供應商,
  • 專注身份證閱讀器、指紋采集儀、社??ㄗx卡器、IC卡讀寫器的一家身份證應用服務平臺
服務熱線:400-0020-908 官方微信 產品標簽 網站地圖 EN

明創智慧

當前位置: 首頁 > 服務支持專區 > SDK開發包 > 正文

明創IDR-100YB云解碼藍牙身份證閱讀器Android開發包

來源:www.mingcreate.cn   標簽:云解碼 藍牙 IDR-100YB DK309   最近更新:2022-2-19

111.jpg

本開發包支持明創云解碼藍牙身份證閱讀器,支持型號IDR-100YB、DK309系列云解碼讀卡器。

點擊這里下載↓



public class IDCardData {

    public final static int ID_TYPE_CN = 1;       //身份證類型-居民身份證

    public final static int ID_TYPE_GAT = 2;      //身份證類型-港澳臺居民身份證

    public final static int ID_TYPE_FOREIGN = 3;  //身份證類型-外國人永久居留身份證


    public String Name = null;                   // 姓名

    public String Sex = null;                    //性別

    public String Nation = null;                 //名族

    public String Born = null;                   //出生

    public String Address = null;                //住址

    public String IDCardNo = null;               //身份證號

    public String GrantDept = null;              //簽發機關

    public String UserLifeBegin = null;          //有效期起始日期

    public String UserLifeEnd = null;            //有效期結束日期

    public String passport = null;               //通行證號碼

    public String issueNumber = null;            //簽發次數


    public Bitmap PhotoBmp = null;

    public byte[] fingerprintBytes = null;       //指紋數據

    public int type = 0;


    public IDCardData(byte[] idCardBytes){


        if (idCardBytes.length < 1295) {

            return;

        }


        if ( (idCardBytes[0] == (byte)0xaa)

                && (idCardBytes[1] == (byte)0xaa)

                && (idCardBytes[2] == (byte)0xaa)

                && (idCardBytes[3] == (byte)0x96)

                && (idCardBytes[4] == (byte)0x69)) {


            //int totalLen = ((idCardBytes[5] & 0xff) << 8) | (idCardBytes[6] & 0xff);

            int wordMsgBytesLen = ((idCardBytes[10] & 0xff) << 8) | (idCardBytes[11] & 0xff);

            int photoMsgBytesLen = ((idCardBytes[12] & 0xff) << 8) | (idCardBytes[13] & 0xff);


            byte[] wordMsgBytes = new byte[wordMsgBytesLen];

            byte[] photoMsgBytes = new byte[photoMsgBytesLen];


            if (idCardBytes.length == 1295) {   //不帶指紋

                System.arraycopy(idCardBytes, 14, wordMsgBytes, 0, wordMsgBytesLen);

                System.arraycopy(idCardBytes, 14 + wordMsgBytesLen, photoMsgBytes, 0, photoMsgBytesLen);

            }

            else {   //帶指紋

                int fingerprintBytesLen = ((idCardBytes[14] & 0xff) << 8) | (idCardBytes[15] & 0xff);   //指紋長度

                fingerprintBytes = new byte[fingerprintBytesLen];

                System.arraycopy(idCardBytes, 16, wordMsgBytes, 0, wordMsgBytesLen);

                System.arraycopy(idCardBytes, 16 + wordMsgBytesLen, photoMsgBytes, 0, photoMsgBytesLen);

                System.arraycopy(idCardBytes, 16 + wordMsgBytesLen + photoMsgBytesLen, fingerprintBytes, 0, fingerprintBytesLen);

            }


            //判斷身份證的類型是否為港澳臺身份證

            if (wordMsgBytes[248] == 'J') {

                type = ID_TYPE_GAT;

            }

            else if (wordMsgBytes[248] == 'I') {

                type = ID_TYPE_FOREIGN;

            }

            else {

                type = ID_TYPE_CN;

            }


            byte[] bytes;

            String str;

            int index = 0;


            //姓名

            bytes = new byte[30];

            System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

            index += bytes.length;

            try {

                Name = new String(bytes, "UTF_16LE");

            } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }


            //性別

            if (wordMsgBytes[30] == 0x31) {

                Sex = "男";

            }

            else {

                Sex = "女";

            }

            index += 2;


            //名族

            if (type == ID_TYPE_CN) {

                bytes = new byte[4];

                System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

                try {

                    str = new String(bytes, "UTF_16LE");

                    if (str.length() == 2) {

                        int nationCode = Integer.valueOf(str, 10);

                        Nation = getNation(nationCode);

                    }

                } catch (Exception e) {

                    e.printStackTrace();

                }

            }

            index += 4;


            //出生

            bytes = new byte[16];

            System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

            index += bytes.length;

            try {

                Born = new String(bytes, "UTF_16LE");

            } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }


            //住址

            bytes = new byte[70];

            System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

            index += bytes.length;

            try {

                Address = new String(bytes, "UTF_16LE");

            } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }


            //身份證號

            bytes = new byte[36];

            System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

            index += bytes.length;

            try {

                IDCardNo = new String(bytes, "UTF_16LE");

            } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }


            //簽發機關

            bytes = new byte[30];

            System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

            index += bytes.length;

            try {

                GrantDept = new String(bytes, "UTF_16LE");

            } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }


            //有效起始日期

            bytes = new byte[16];

            System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

            index += bytes.length;

            try {

                UserLifeBegin = new String(bytes, "UTF_16LE");

            } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }


            //有效結束日期

            bytes = new byte[16];

            System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

            index += bytes.length;

            try {

                UserLifeEnd = new String(bytes, "UTF_16LE");

            } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }


            //港澳臺身份證

            if (type == ID_TYPE_GAT) {

                //通行證號碼

                bytes = new byte[18];

                System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

                index += bytes.length;

                try {

                    passport = new String(bytes, "UTF_16LE");

                } catch (UnsupportedEncodingException e) {

                    e.printStackTrace();

                }


                //簽發次數

                bytes = new byte[4];

                System.arraycopy(wordMsgBytes, index, bytes, 0, bytes.length);

                index += bytes.length;

                try {

                    issueNumber = new String(bytes, "UTF_16LE");

                } catch (UnsupportedEncodingException e) {

                    e.printStackTrace();

                }

            }


            //照片解碼

            if (photoMsgBytesLen > 0) {

                try {

                    byte[] buf=new byte[Wlt2Bitmap.IMG_LENGTH];

                    if (1 == Wlt2Bitmap.wlt2Bmp (photoMsgBytes, buf)) {

                        PhotoBmp = Wlt2Bitmap.Bgr2Bitmap (buf);

                    }

                } catch (Exception e) {

                    e.printStackTrace();

                }

            }

        }

    }


    String getNation(int code){

        switch(code){

            case 01:  return "漢";

            case 02:  return "蒙古";

            case 03:  return "回";

            case 04:  return "藏";

            case 05:  return "維吾爾";

            case 06:  return "苗";

            case 07:  return "彝";

            case 8:   return "壯";

            case 9:   return "布依";

            case 10:  return "朝鮮";

            case 11:  return "滿";

            case 12:  return "侗";

            case 13:  return "瑤";

            case 14:  return "白";

            case 15:  return "土家";

            case 16:  return "哈尼";

            case 17:  return "哈薩克";

            case 18:  return "傣";

            case 19:  return "黎";

            case 20:  return "傈僳";

            case 21:  return "佤";

            case 22:  return "畬";

            case 23:  return "高山";

            case 24:  return "拉祜";

            case 25:  return "水";

            case 26:  return "東鄉";

            case 27:  return "納西";

            case 28:  return "景頗";

            case 29:  return "柯爾克孜";

            case 30:  return "土";

            case 31:  return "達斡爾";

            case 32:  return "仫佬";

            case 33:  return "羌";

            case 34:  return "布朗";

            case 35:  return "撒拉";

            case 36:  return "毛南";

            case 37:  return "仡佬";

            case 38:  return "錫伯";

            case 39:  return "阿昌";

            case 40:  return "普米";

            case 41:  return "塔吉克";

            case 42:  return "怒";

            case 43:  return "烏孜別克";

            case 44:  return "俄羅斯";

            case 45:  return "鄂溫克";

            case 46:  return "德昂";

            case 47:  return "保安";

            case 48:  return "裕固";

            case 49:  return "京";

            case 50:  return "塔塔爾";

            case 51:  return "獨龍";

            case 52:  return "鄂倫春";

            case 53:  return "赫哲";

            case 54:  return "門巴";

            case 55:  return "珞巴";

            case 56:  return "基諾";

            case 97:  return "其他";

            case 98:  return "外國血統中國籍人士";

            default : return "";

        }

    }


    public String toString() {

        if (type == ID_TYPE_GAT) {

            return "\r\n姓        名:" + Name

                    + "\r\n性        別:" + Sex

                    + "\r\n出生日期:" + Born

                    + "\r\n住        址:" + Address

                    + "\r\n身份 證號:" + IDCardNo

                    + "\r\n簽發 機關:" + GrantDept

                    + "\r\n有  效  期:" + UserLifeBegin + "-" + UserLifeEnd

                    + "\r\n通行 證號:" + passport

                    + "\r\n簽發 次數:" + issueNumber;

        }

        else {

            return "\r\n姓        名:" + Name

                    + "\r\n性        別:" + Sex

                    + "\r\n名        族:" + Nation

                    + "\r\n出生日期:" + Born

                    + "\r\n住        址:" + Address

                    + "\r\n身份 證號:" + IDCardNo

                    + "\r\n簽發 機關:" + GrantDept

                    + "\r\n有  效  期:" + UserLifeBegin + "-" + UserLifeEnd;

        }

    }

}






(*由于產品升級或其他原因,明創IDR-100YB云解碼藍牙身份證閱讀器Android開發包產品實際參數有可能變更,以實際產品為準。本文中的所有陳述、信息和建議也不構成任何明示或暗示的擔保)

主站蜘蛛池模板: 国产另类在线| 欧美综合社区| 色妺妺视频网| 日日插插| 国产欧美日韩在线播放| 毛片站| 成人性生生活性生交3| 91射| 黑人黄色片| 99国产在线观看| 超碰人人爽| 日本少妇激三级做爰在线| 夜色88v精品国产| www.69pao.com| xxxx大片| 国产又黄又猛又粗| 韩国av在线免费观看| 久久久视屏| 新91在线| 涩涩久久| 天海翼一区二区三区四区演员表| 美日毛片| 一区二区视频免费看| 麻豆视频国产| 爱色av网站| 毛片av在线播放| 欧美人妖老妇| 韩国三级hd中文字幕的背景音乐| 韩国三级hd中文字幕叫床浴室| 国产精品系列在线| 色播在线视频| 亚洲 欧美 制服 综合 另类| 亚洲欧美第一视频| 蜜桃av噜噜一区二区三区网址| 91精品人妻一区二区三区果冻| 在线国产欧美| 午夜特片网| 欧美一区综合| 色丁香久久| 国产免费一级片| 成人免费在线视频| 九色自拍蝌蚪| 国产肉体xxxx裸体784大胆| 亚洲成av人片| 国产欧美网站| 亚州国产精品视频| 好吊妞这里只有精品| 久久综合激情| 国产又黄又粗又长| 白浆在线| 欧美aaa级| 美日韩一二三区| 男女午夜av| 欧美拍拍视频| av免费成人| 国产原创剧情| 中文字幕三级视频| 成年在线电影网站| 伊人久久一区二区| www.4hu95.com四虎| 啪啪天堂| 久久精品黄色| 天天综合网在线观看| 干美女视频| 欧美国产日韩视频| 在线免费看污网站| 国产高清aaa| 99久久人妻无码中文字幕系列| 在线观看av一区| 99视频观看| 国产综合视频| 久久久国产免费| 动漫av网站免费观看| 欧美精品一卡二卡| 国产av无码专区亚洲av毛网站| www.色综合| 久久久综合色| 色玖玖| 亚洲无线码一区二区三区在线观看| a黄色录像| 天堂av国产夫妇精品自在线 | 91天堂网| 亚洲第十页| 玖玖精品在线视频| 性freexxx8888hd| 老色批影院| 99综合网| 自拍偷拍在线视频| 午夜亚洲成人| 一级片欧美| 久久久国产精品电影| 五十路毛片| 国产一区自拍视频| 欧美乱大交xxxxx潮喷| 狠狠搞视频| 国产成人精品一区二区三区四区 | 无码人妻熟妇av又粗又大| 黄瓜视频在线观看| 欧美激情在线免费观看| 午夜羞羞影院| av伊人久久| 青草视频免费在线观看| 日韩中文字幕在线不卡| 免费特级黄色片| 人妻体内射精一区二区| 久久精品国产99国产精品| 欧美熟妇激情一区二区三区| 女儿的朋友5中汉字晋通话| 亚洲综合欧美综合| 丰满人妻老熟妇伦人精品| 欧美精品video| 男人视频网| 日韩精品免费视频| www.国产精品视频| 人妖一级片| 日韩xx00| 国产av综合影院| 九九自拍视频| 久草在| 污夜影院| 天天精品| 久久国产精品区| 欧美少妇诱惑| 欧美一区二区精品在线| 国产精品久久久国产盗摄| 91国内精品久久| 亚洲国产精品区| 精品日韩欧美| 91精品一区二区三区四区| 精品一区二区三区免费看| 欧美日韩一区二区三区在线观看| 人妻丝袜一区二区| 蜜臀久久精品久久久久| 九九九网站| 婷婷色婷婷| 国产网友自拍视频| 亚洲天堂av在线电影| 中国色老太hd| 白白操在线视频| 午夜福利92国语| 久久丫精品| 一级体片a| 国产专区一二三sm调教女王图片| 亚洲一区二区激情| 岛国av不卡| 亚洲无人区码一码二码三码| 麻豆91视频| 欧美日韩在线不卡| 成人国产精品久久久| 91精品久久香蕉国产线看观看| 在线看片你懂的| 18禁裸乳无遮挡啪啪无码免费| 午夜视频一区二区三区| 成人av影院在线观看| 电家庭影院午夜| 男女草比视频| 日本视频网站在线观看| 99国产精品免费| 九一天堂| 久久久999视频| 女生张开腿让男生插| 五月婷婷丁香在线| 成人h视频| 日本黄色美女视频| 日韩成人在线影院| 美女性生活视频| 亚洲精品456| 青青草原一区二区| 天天在线免费视频| 日本欧美在线观看| 久啪视频| 亚欧洲精品在线视频免费观看| 97欧美视频| 日韩电影在线观看电影| 日本中文字幕精品| 97久久人人超碰caoprom欧美| 欧美顶级毛片在线播放| 尤物最新网址| av污| 日韩不卡免费视频| 在线观看日本网站| 国产精品人妻| 国产精品黄网站| aaaaa级毛片| 中文字字幕在线观看| 人人搞人人干| 波多野结衣av电影| 最新成人av网站| 女人裸体又黄| 亚洲区一| 天堂色综合| 国产伦理一区| 性按摩玩人妻hd中文字幕| 国产精品一二三四五区| 69看片| 永久免费观看av| 最新毛片网| 天天操夜夜干| av嫩草| 国产福利小视频在线| 黄色大片91| 91亚洲精品久久久久久久久久久久| www.日本xxxx| 91精品播放| 中文字幕在线字幕中文| 一本色道久久88综合无码| 亚洲字幕| 亚洲欧美在线一区| 男人的天堂中文字幕| 久久y| 亚洲黄色自拍| 欧美日比视频| 欧美性爽爽| 小sao货cao死你| 91精彩刺激对白露脸偷拍| 国产精品9191| 伊在线久久丫| 久久久成人精品一区二区三区| 亚洲色图欧美色| 色桃视频| 国产性生活一级片| 日韩理论电影| 成人美女毛片| 中文字幕色偷偷人妻久久一区| 三级在线网站| 日本a级片网站| 国产91综合| 午夜剧场免费在线观看| 91日韩中文字幕| 亚洲黄片一区二区| 色秀视频在线观看| 亚洲欧美日本一区二区| 亚洲精品天堂网| 鸥美一级片| 久久久久久9| 91狠狠操| 九九热视频免费| 香蕉视频首页| 性色av蜜臀av| 日韩美女三级| 亚洲激情视频在线观看| 草草在线观看| 女同亚洲精品一区二区三| 激情国产在线| 中文字幕在线一区| 国产精品影视在线观看| 毛片123| 99精品自拍| 欧美激情天堂| 色爱区综合| 日本少妇在线| 日韩中文网| 精品看片| 高清三区| 韩国伦理片在线播放| 国产毛片毛片毛片毛片| 国产一区二区伦理片| 欧美三级一级| 亚洲另类人人澡| 国产成人精品免费视频| 李丽珍裸体午夜理伦片| 男人天堂999| 黄色日韩| 能看av的网址| 日本色综合网| 亚洲一二三四视频| 波多野结衣在线一区| 求个av网站| 久久久久亚洲av成人网人人网站| 自拍偷拍p| 免费黄色欧美| av地址在线观看| 影音先锋欧美资源| 日日干日日色| 色偷偷av男人的天堂| 国产精品一区二区网站| 91片看| 可以免费看的黄色| 日本电影久久| 欧洲精品无码一区二区| 97超碰成人| 国产精品久久久久久亚洲美女高潮| 天天看夜夜爽| 高大丰满毛茸茸xxx性| 欧日韩在线| 久久av在线播放| 亚洲美女色视频| 国产一区黄| 色爱宗合网| av中文字幕免费| 成人免费视频7778| av成人动漫在线观看| 国产在线观看免费| 91破处视频| av黄色网| 色播基地| 欧美熟妇交换久久久久久分类| 韩国国产在线| 9999精品视频| 日韩精品小视频| 三级欧美在线观看| 卡一卡二av| 伊人亚洲精品| 中文日韩在线观看| 欧美一区二区日韩| 激情五月亚洲| 黄色免费视频| 99看片| 成人福利视频在线| 天堂av手机在线观看| 国产aⅴ片| 欧美黄网站| 国产主播喷水| 污视频在线| 国产精品午夜无码专区| 午夜剧场福利| 精品国产一级片| 好吊一二三区| 成人精品二区| 国产精品tv在线观看| www.4虎| 免费午夜影院| 欧美永久免费| 两性午夜免费视频| 久久美女毛片| 午夜伦理视频| 欧美日本高清| 日韩午夜在线播放| 性生活一级大片| 亚洲免费网站在线观看| 午夜黄色在线| 日日日干干干| 18欧美性xxxx极品hd| 玖玖视频免费| 激情五月视频| 亚洲精品国产片| 五月天婷婷社区| 免费网站观看www在线观| 天天操天天开心| 亚洲日本二区| 亚洲性自拍| 黄a大片| 一级黄视频| 国产视频三级| 欧洲精品人妻一区二区三区软件| 六月色播| 久草香蕉在线| 国产婷婷色一区二区三区| 久久精品视频7| 粉嫩av网| 天堂av网站在线观看| aaa亚洲| 国产精品区一区二| 日韩无砖| 夜色成人| www在线免费观看| 欧美日韩三| 亚洲天天综合网| 成人视屏在线观看| 麻豆视频免费| 天天射天天色天天干| 国产污视频| 国产欧美精品久久| 美女光屁股视频| avtt亚洲| 最好看的中文字幕| wwwxxx日本免费| 孕妇毛片| 中文字幕日韩三级| av综合网站| 亚洲性视频电影| 国产激情久久久久久熟女老人av| 这里有精品| 青青草福利视频| 男人天堂新地址| 欧美亚洲一级片| 性人久久久久| 久久久国产精品一区| 爽爽爽视频在线观看| 制服.丝袜.亚洲.中文.综合懂色| 亚洲一级理论片| 韩国av在线播放| 国产精品视频3p| 婷婷久久伊人| 网红av在线| 伊人精品视频| 成人av电影网站| 国产欧美一区二区三区免费| 小视频在线免费观看| 永久毛片| 欧美偷拍亚洲| 三上悠亚一区二区| 亚洲高清视频在线观看| 日韩美女做爰高潮免费| 国产精品免费vv欧美成人a| 伊人av电影网| 奇米成人影视| 激情五月视频| 好男人www在线视频| 精品国产一二三区| 国产二级视频| 97超级碰碰| 特级西西444www大胆免费看| 色激情网| 中文自拍| 成人av一区二区三区| 日韩欧美视频一区| 99精品综合| 欧美首页| 女人裸体又黄| 超碰狠狠| a天堂中文字幕| 香蕉视频在线观看视频| 国产夫妇交换聚会群4p| 最近日韩中文字幕| 99热这里只有精品1| 国产999在线| 蜜桃视频在线网站| 综合九九| 久久亚洲精选| 综合精品久久| 国产精品亚洲一区二区三区| 国产女人高潮毛片| 国产在线成人| 校园春色av| 夜夜躁日日躁狠狠久久av| 久久国语| 中文字幕在线视频播放| 亚洲一区二区在线视频观看| 无码久久精品国产亚洲av影片| 伊人精品视频在线观看| 国产日韩一区二区在线| 欧美色图亚洲综合| xfplay噜噜av| 性日本少妇| 日本成人精品| 在线免费观看h片| 欧美福利视频一区| 老外毛片| 在线婷婷| 黄色成人免费看| 国产精品啪啪啪视频| 欧美天堂一区二区| 拔萝卜91| 精品欧美一区二区在线观看欧美熟 | 国产一二区视频| 美女久久久| 四虎在线永久免费观看| 91丝袜国产在线观看| 日韩黄在线观看| 秘密的基地| 亚洲国产经典| av免费观看网站| 亚洲ww77777影视| v天堂在线| 伊人免费在线| 77777视频| 亚洲国产精品午夜在线观看| 国产无套免费网站69| 已满18岁免费观看电视连续剧| 日日拍夜夜拍| 欧美日韩精品一区二区三区蜜桃| 欧美日韩在线二区| 蜜桃视频在线入口www| 农村妇女精品一区二区| aaaaa一级片| 日韩视频h| 欧美一级淫| 欧美a∨亚洲欧美亚洲| 亚洲巨乳在线| 狠狠做深爱婷婷久久综合一区| 自拍亚洲综合| 91麻豆成人精品国产| 中文字幕第4页| 8x8ⅹ成人永久免费视频| 美女屁股无遮挡| 亚洲欧美精品在线观看| 欧美日韩性| 午夜毛片在线看| 精品欧美久久久| 国产小视频免费| av网站网址| 男人天堂av影院| 超级黄色片| 日韩性大片| 国产尤物在线| 午夜影院| 96精品| 四虎成人永久免费视频| 嫩草国产精品| 无法忍受在线观看| 久久禁| 天天色成人综合网| 免费观看黄色一级视频| 亚洲无人禁区| 亚洲av永久无码精品一区二区国产| 蜜色av| 久久美女免费视频| 高清不卡一区二区三区| 中文字幕乱码av|