assinatura na tela;€¦ · agora os arquivos e bibliotecas necessárias para começar o...

Post on 28-Sep-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

O posGo é um terminal de vendas móvel completo, em um único dispositivo estão a CPU, tela touch, impressora térmica e“maquininha” de cartão. Tudo isto em um equipamento de design prático, leve, tela de toque colorida e capacitiva de 5,5polegadas, com display de alta resolução e multitouch para ser segurado com uma mão. Possui bateria interna quepermite o funcionamento desligado da tomada e com conexão de rede sem fio para poder ser levado em qualquer lugar.

Opera com sistema Android, permitindo a utilização de aplicativos de vendas compatíveis. É perfeito para ser utilizadocomo terminal de vendas principal ou extensão de um terminal fixo.

O posGo é ideal para negócios com pouco espaço ou que exigem atendimento do cliente com mobilidade, acabando com asfilas de caixa.

O cliente conta com recursos que inovam e ao mesmo tempo simplificam o atendimento:

Assinatura na tela;

Leitor 1D e 2D (QRCode);

GPS, 3G e Bluetooth;

Leitor de cartão por tarja magnética e chip;

NFC.

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Especi�cações TécnicasProcessador CPU de 4 núcleos + processador de alta segurança

Memória FLASH 8GB, RAM 1GB esuporte para cartão microSD

Tela sensível ao toque, tipo capacitivo, suporta e-assinatura

Display 5,5 polegadas, 720 x 1280

PINPAD PINPAD integrado (Teclado virtual)

Impressora Impressora térmica direta

Bobina de Papel Diâmetro 40mm , largura 25mm

Leitor Magnético 1,2,3 tarjas bidirecionais

Comunicação 3G Netcom , WIFI e Bluetooth 4.1

Sistema Operacional Android 5.1 lolipop

Leitores de Cartão PSAM: 2

SIM: 1

SD: 1

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

NFC 13.56MHz, support ISO14443

Não é possível emular o PosGo no Android Studio, pois seu SDK tem dependências específicas dohardware!

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

BibliotecasArquivo Descrição

nexgosdk-2.x.x.jar Pacote Jar de interface da API

libemvjni.so Biblioteca EMV

libsdkemvjni.so Biblioteca EMV do SDK

libgencode.so Biblioteca Encode

Como obtenho o SDK do posGo?

Baixe as bibliotecas acessando o sistema posGo, na página inicial vá em Acesso a Desenvolvedores e façaseu cadastro!

Requisitos Básicos do SistemaAmbiente de Desenvolvimento: Android Studio 2.0 ou superior.

Sistema Operacional: Android 5.1.1 Lolipop.

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Criando um projetoAbra um novo projeto no Android Studio:

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Na aba "1:Project" clique no nome do projeto e vá em "project":

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Copie os arquivos da pasta SDK-N5_v2_04_2\Library:

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Vá em "App/libs" e cole os arquivos do SDK:

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Agora os arquivos e bibliotecas necessárias para começar o desenvolvimento estão corretamente instalados na pasta libs:

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Para que as bibliotecas estejam disponíveis para o projeto, abra o arquivo Gradle Scripts/build.gradle (module:app) e insiraa configuração abaixo:

sourceSets.main {

jniLibs.srcDir 'libs'

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Essa instrução deve ser colocada logo após o parâmetro defaultConfig!

Seu arquivo ficará como na imagem abaixo, clique em Sync Now para sincronizar:

jni.srcDirs = [] //disable automatic ndk-build call }

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Exemplo de implementação

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

O objeto global que é utilizado para as classes referentes ao dispositivo é o DeviceEngine, e suaimplementação é feita da seguinte forma dentro da classe:

Mostrando a classe principal com uma implementação de impressão:

MainActivity.java

private DeviceEngine deviceEngine = APIProxy.getDeviceEngine();

package com.example.jcbruno.teste_posgo_2;

import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast;

import com.nexgo.oaf.apiv3.APIProxy; import com.nexgo.oaf.apiv3.DeviceEngine; import com.nexgo.oaf.apiv3.SdkResult; import com.nexgo.oaf.apiv3.device.printer.AlignEnum; import com.nexgo.oaf.apiv3.device.printer.BarcodeFormatEnum; import com.nexgo.oaf.apiv3.device.printer.DotMatrixFontEnum; import com.nexgo.oaf.apiv3.device.printer.FontEntity; import com.nexgo.oaf.apiv3.device.printer.OnPrintListener; import com.nexgo.oaf.apiv3.device.printer.Printer;

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

public class MainActivity extends AppCompatActivity {

private DeviceEngine deviceEngine; private Printer printer; private final int FONT_SIZE_SMALL = 20; //32 colunas de letras ou números private final int FONT_SIZE_NORMAL = 24; //27 colunas de letras ou números private final int FONT_SIZE_BIG = 28; //24 colunas de letras ou números

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate( savedInstanceState ); setContentView( R.layout.activity_main ); DeviceEngine deviceEngine = APIProxy.getDeviceEngine(); printer = deviceEngine.getPrinter();

Button btNFCe = (Button) findViewById( R.id.btNFCe ); btNFCe.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { imprimirNFCe(); } } );

Button btQrcode = (Button)findViewById( R.id.btQrcode ); btQrcode.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View v) { imprimirQRCode(); } } );

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

}

private void imprimirQRCode() { printer.initPrinter(); printer.appendQRcode(getString(R.string.printQrcode),300,AlignEnum.CENTER); //printer.appendPrnStr( "QR Code de NFC-e",FONT_SIZE_NORMAL,AlignEnum.CENTER,false); printer.startPrint( true, new OnPrintListener() { @Override public void onPrintResult(final int retCode) { runOnUiThread( new Runnable() { @Override public void run() { switch (retCode){ case SdkResult.Success: Toast.makeText( MainActivity.this,"Impresso com sucesso",Toast.LENGTH_SHORT ).show(); break; case SdkResult.Printer_AddImg_Fail: Toast.makeText( MainActivity.this,"Falha na impressão",Toast.LENGTH_SHORT ).show(); break; default: Toast.makeText( MainActivity.this,"Erro desconhecido",Toast.LENGTH_SHORT ).show(); } } } ); } } ); }

private void imprimirNFCe() {

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

printer.initPrinter(); printer.setLetterSpacing( 5 ); Bitmap bitmap = BitmapFactory.decodeResource( getResources(),R.drawable.logo ); printer.appendImage( bitmap, AlignEnum.CENTER ); printer.appendPrnStr( "Bematech Hardware", FONT_SIZE_NORMAL,AlignEnum.CENTER,false ); printer.appendPrnStr( "Av. Comendador Franco, 1341 - Jardim Botânico", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "Bematech Hardware", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "CNPJ: 123.456.789/00001-00", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "__________________________________", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "Desc Qtd Vlr Un Tot ", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "_____________________________", FONT_SIZE_BIG,AlignEnum.LEFT,false ); printer.appendPrnStr( "Sabão em pó 1 3,44 1 3,44", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "_____________________________", FONT_SIZE_BIG,AlignEnum.LEFT,false ); printer.appendPrnStr( "Valor Total 3,44", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "Pagamento 4,00", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "Troco 0,56", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "_____________________________", FONT_SIZE_BIG,AlignEnum.LEFT,false ); printer.appendPrnStr( "Informações Adicionais", FONT_SIZE_NORMAL,AlignEnum.CENTER,false ); printer.appendPrnStr( "Consulta chave de acesso", FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendBarcode( "1234567890",50,0,2, BarcodeFormatEnum.CODE_128,AlignEnum.CENTER ); printer.appendQRcode( "teste qrcode",200,AlignEnum.CENTER ); printer.appendPrnStr( "Consumidor Julio Cesar Bruno",FONT_SIZE_NORMAL,AlignEnum.LEFT,false ); printer.appendPrnStr( "", FONT_SIZE_NORMAL,AlignEnum.LEFT,false );

printer.startPrint( true, new OnPrintListener() { @Override public void onPrintResult(final int retCode) { runOnUiThread( new Runnable() { @Override

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

public void run() { switch (retCode){ case SdkResult.Success: Toast.makeText( MainActivity.this,"Impresso com sucesso",Toast.LENGTH_SHORT ).show(); break; case SdkResult.Printer_Print_Fail: Toast.makeText( MainActivity.this,"Falha na impressão",Toast.LENGTH_SHORT ).show(); break; case SdkResult.Printer_PaperLack: Toast.makeText( MainActivity.this,"Sem papel",Toast.LENGTH_SHORT ).show(); break; case SdkResult.Printer_UnFinished: Toast.makeText( MainActivity.this,"Impressão não terminou",Toast.LENGTH_SHORT ).show(); break; case SdkResult.Printer_TooHot: Toast.makeText( MainActivity.this,"Superaquecimento da impressora!",Toast.LENGTH_SHORT ).show(); break; default: Toast.makeText( MainActivity.this,"Erro desconhecido",Toast.LENGTH_SHORT ).show(); }

} } );

} } );

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

} }

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Para realizar a impressão do QR Code e do código de barras, é necessário inserir a tag abaixo no arquivoAndroidManifest.xml!

Ficará como no exemplo abaixo:

manifest.jpg

Essa é a tela do aplicativo de exemplo citado acima:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

Considerações FinaisEste manual foi elaborado para inicialização do desenvolvimento para o PosGo, facilitando a implementação. Qualquerdivergência ou informação vista como incorreta, favor entrar em contato com nosso suporte. Esse material tem fins deaprendizado e seu uso é livre.

SuporteChat Online - bematechpartners.com.br

Atendimento ao desenvolvedor - 0800-6447277

Portal de Desenvolvedores Bematech Partners

Last updated 2018-05-06 15:47:34 HB

Create PDF in your applications with the Pdfcrowd HTML to PDF API PDFCROWD

top related