react-native-gryfo v1.0.10
React Native Gryfo
Biblioteca adaptada do Android nativo para o React Native com o sistema de reconhecimento Gryfo.
Exemplo
import Gryfo from "react-native-gryfo";
// Para iniciar a activity de cadastro
Gryfo.startRecognizeActivity()
.then(res => {
console.log(res);
})
.catch(err => {
console.log(err);
});
// Para iniciar a activity de registro
Gryfo.startRegisterActivity()
.then(res => {
console.log(res);
})
.catch(err => {
console.log(err);
});
Instalação
Para instalar a biblioteca
yarn add react-native-gryfo
No androidManifest é necessário colocar um atributo para que ele faça o replace do nome e do tema
./android/app/src/main/AndroidManifest.xml
<manifest ...
xmlns:tools="http://schemas.android.com/tools"
...
>
<application tools:replace="android:name, android:theme"
...
</application>
</manifest>
Após isso, é necessário adicionar os seguintes blocos nos dois build.gradles do react dentro da pasta ./android e ./android/app
./android/build-gradle
buildscript {
ext {
minSdkVersion = 21 // Trocar para versão 21
}
// Adicionar o mavenCentral como repositorio
repositores {
mavenCentral()
}
// Adicionas as seguintes depencencias
dependencies {
classpath 'io.realm:realm-gradle-plugin:6.0.0'
classpath 'com.google.gms:google-services:4.3.3'
}
}
// Adicionar os seguintes repositórios no "allprojects"
allprojects {
repositories {
maven {
url 'http://gpm.gryfo.com.br:8081/artifactory/gradle-dev'
credentials {
username = "username"
password = "password"
}
}
mavenCentral()
maven {
url 'https://s3.amazonaws.com/fabric-artifacts-private/internal-snapshots'
}
}
}
//Adicionar o seguinte bloco no final do arquivo
task clean(type: Delete) {
delete rootProject.buildDir
}
./android/app/build-gradle
android {
// Adicionar os seguintes blocos na tag android
packagingOptions {
pickFirst "META-INF/kotlinx-io.kotlin_module"
pickFirst "META-INF/atomicfu.kotlin_module"
pickFirst "META-INF/kotlinx-coroutines-io.kotlin_module"
}
aaptOptions {
noCompress "tflite"
}
sourceSets {
main {
jniLibs.srcDirs = ["libs"]
}
}
}
// Implementar 2 dependencias
dependencies {
implementation 'androidx.appcompat:appcompat:1.1.0-rc01'
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0-alpha02'
}
Métodos
A biblioteca oferece 2 métodos e ambos são uma promisse do Javascript. Um é utilizado para registrar o usuário e um para reconhecer.
startRegisterActivity()
Abre a câmera do device com um botão para tirar uma foto depois de 3 segundos. Após o usuário confirmar a foto, a biblioteca retorna uma ID.
startRecognizeActivity()
Abre a câmera do device e procura pelo rosto do usuário. Após reconhecer, a biblioteca retorna a ID da pessoa cadastrada.