react-native android 身份證號碼(正面)/有效期限(反面)識別 (實(shí)時(shí)本地識別)

Git地址 https://github.com/ribuluo000/IDCardRecognition

React Native: react-native-idrecognition (Android)

react-native Android 身份證號碼(正面)/有效期限(反面)識別 (實(shí)時(shí))

本地識別基于tess_two,位置對的話識別準(zhǔn)確率達(dá)到90%以上

Getting started

package.json 添加

  "dependencies": {
    "react-native-IDRecognition": "git+https://github.com/ribuluo000/IDCardRecognition.git",
  },
$ npm i
$ react-native link react-native-android-auto-update

Android

  • Add below snippet in your app setting.gradle file
include ':react-native-IDRecognition'
project(':react-native-IDRecognition').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-IDRecognition/android')
  • Insert the following lines inside the dependencies block in android/app/build.gradle:
    compile project(':react-native-IDRecognition')
  • Add below snippet in your app app/***/MainApplication.java file

Add
import com.nick.idcard.IDRecognitionPackage; import com.nick.idcard.AssestUtils;
to the imports at the top of the file




@Override
protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
        new MainReactPackage(),
        new IDRecognitionPackage()
        );
}



  @Override
  public void onCreate() {
    super.onCreate();
    SoLoader.init(this, /* native exopackage */ false);
    new AssestUtils(this).init();
  }
  
  • copy files in tessdata to android/app/src/main/assets/tessdata

Usage


import React, { Component } from "react";
import { StyleSheet, Text, TouchableOpacity, View } from "react-native";
import RNIDRecognition from "react-native-IDRecognition";

export default class App extends Component<> {
    render() {
        return (
            <View style={styles.container}>
                <View style={{ flex : 0, flexDirection : 'row', justifyContent : 'center', }}>
                    <TouchableOpacity
                        onPress={this.showIdRecognitionFrontScreen.bind(this)}
                        style={styles.capture}
                    >
                        <Text style={{ fontSize : 14 }}> showIdRecognitionFrontScreen </Text>
                    </TouchableOpacity>
                </View>
                <View style={{ flex : 0, flexDirection : 'row', justifyContent : 'center', }}>
                    <TouchableOpacity
                        onPress={this.showIdRecognitionBackScreen.bind(this)}
                        style={styles.capture}
                    >
                        <Text style={{ fontSize : 14 }}> showIdRecognitionBackScreen </Text>
                    </TouchableOpacity>
                </View>
            </View>
        );
    }

    showIdRecognitionFrontScreen = async function () {
        // alert('111');
        RNIDRecognition.showIdRecognitionFrontScreen({}, (data) => {
            console.log(data);
            alert(data);
        });
    };
    showIdRecognitionBackScreen = async function () {
        // alert('111');
        RNIDRecognition.showIdRecognitionBackScreen({}, (data) => {
            console.log(data);
            alert(data);
        });
    };

}

const styles = StyleSheet.create({
    container : {
        flex : 1,
        flexDirection : 'column',
        backgroundColor : 'black'
    },
    preview : {
        flex : 1,
        justifyContent : 'flex-end',
        alignItems : 'center'
    },
    capture : {
        flex : 0,
        backgroundColor : '#fff',
        borderRadius : 5,
        padding : 15,
        paddingHorizontal : 20,
        alignSelf : 'center',
        margin : 20
    }
});

Example

Try the included example/TestCamera

  • cd example/TestCamera/
  • npm i
  • react-native run-android

參考鏈接

React Native 與 Android原生Activity互相跳轉(zhuǎn)頁面 https://www.2cto.com/kf/201710/694451.html

Android中保存圖片到本地功能實(shí)現(xiàn) https://blog.csdn.net/samuel__liu/article/details/50743106

壓縮圖片 Android壓縮圖片后再上傳圖片 https://blog.csdn.net/dzsw0117/article/details/51492172

RN 和原生端通信 https://reactnative.cn/docs/0.51/communication-android.html#content

RN 原生模塊 https://reactnative.cn/docs/0.51/native-modules-android.html

Android里使用正則表達(dá)式 https://blog.csdn.net/lyy1104/article/details/40507537

15/18位身份證號碼驗(yàn)證的正則表達(dá)式總結(jié)(詳細(xì)版) http://www.jb51.net/article/109384.htm
[身份證后面有效期限驗(yàn)證的正則表達(dá)式 ([0-9]{4}).([0-9]{2}).([0-9]{2})-([0-9]{4}).([0-9]{2}).([0-9]{2})]

Android 身份證號碼識別 (本地仔粥,在線急灭,實(shí)時(shí)) https://github.com/bertsir/IDCardRecognition

Tesseract OCR wrapper for React Native https://github.com/jonathanpalma/react-native-tesseract-ocr

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末澎迎,一起剝皮案震驚了整個濱河市巫财,隨后出現(xiàn)的幾起案子斜棚,更是在濱河造成了極大的恐慌拄氯,老刑警劉巖火诸,帶你破解...
    沈念sama閱讀 211,423評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件锦针,死亡現(xiàn)場離奇詭異,居然都是意外死亡置蜀,警方通過查閱死者的電腦和手機(jī)奈搜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,147評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來盯荤,“玉大人馋吗,你說我怎么就攤上這事∏锍樱” “怎么了宏粤?”我有些...
    開封第一講書人閱讀 157,019評論 0 348
  • 文/不壞的土叔 我叫張陵脚翘,是天一觀的道長。 經(jīng)常有香客問我绍哎,道長来农,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,443評論 1 283
  • 正文 為了忘掉前任崇堰,我火速辦了婚禮备图,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘赶袄。我一直安慰自己,他們只是感情好抠藕,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,535評論 6 385
  • 文/花漫 我一把揭開白布饿肺。 她就那樣靜靜地躺著,像睡著了一般盾似。 火紅的嫁衣襯著肌膚如雪敬辣。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,798評論 1 290
  • 那天零院,我揣著相機(jī)與錄音溉跃,去河邊找鬼。 笑死告抄,一個胖子當(dāng)著我的面吹牛撰茎,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播打洼,決...
    沈念sama閱讀 38,941評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼龄糊,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了募疮?” 一聲冷哼從身側(cè)響起炫惩,我...
    開封第一講書人閱讀 37,704評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎阿浓,沒想到半個月后他嚷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,152評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡芭毙,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,494評論 2 327
  • 正文 我和宋清朗相戀三年筋蓖,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片稿蹲。...
    茶點(diǎn)故事閱讀 38,629評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡扭勉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出苛聘,到底是詐尸還是另有隱情涂炎,我是刑警寧澤忠聚,帶...
    沈念sama閱讀 34,295評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站唱捣,受9級特大地震影響两蟀,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜震缭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,901評論 3 313
  • 文/蒙蒙 一赂毯、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧拣宰,春花似錦党涕、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至晌该,卻和暖如春肥荔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背朝群。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評論 1 266
  • 我被黑心中介騙來泰國打工燕耿, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人姜胖。 一個月前我還...
    沈念sama閱讀 46,333評論 2 360
  • 正文 我出身青樓誉帅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親右莱。 傳聞我的和親對象是個殘疾皇子堵第,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,499評論 2 348

推薦閱讀更多精彩內(nèi)容