Eu estou com uma dúvida em uma app que estou desenvolvendo, talvez vocês possa me ajudar. Trata-se de uma app de venda de passagens BP-e que rodará em um dispositivo móvel. Uma maquina de cartão de crédito da Cielo. A Cielo LIO Ela tem uma impressora acoplada, mas é impossível acessa-la via Bluetooth ou USB ou COM. No site de suporte ao desenvolvedor da Cielo há a seguinte informação:
1) Para realizar a integração é necessário definir um contrato de resposta com a LIO, no modelo abaixo:
2) Para realizar a impressão, basta montar uma URL com o seguinte formato: lio://print?request=$base64&urlCallback=order://response
Com essas informações eu desenvolvi a minha aplicação enviando intents para LIO com os comandos e os textos a serem impressos. Estou consegundo imprimir, porém, quando eu imprimo, a aplicação da LIO que roda em segundo plano, responsável por receber os comandos e executar a impressão, abre e não fecha mais e sobrepõe a minha aplicação.
Eu estou usando esta rotina para imprimir:
Base64 := MinhaEncodeBase64(BytesOf(scheme)); Uri := 'lio://print?request='+Base64+'&urlCallback=order://response'; {$IFDEF ANDROID}
Pergunta
Marcio Dias Ramos
Olá amigos, tudo bom?
Eu estou com uma dúvida em uma app que estou desenvolvendo, talvez vocês possa me ajudar.
Trata-se de uma app de venda de passagens BP-e que rodará em um dispositivo móvel.
Uma maquina de cartão de crédito da Cielo. A Cielo LIO
Ela tem uma impressora acoplada, mas é impossível acessa-la via Bluetooth ou USB ou COM.
No site de suporte ao desenvolvedor da Cielo há a seguinte informação:
1) Para realizar a integração é necessário definir um contrato de resposta com a LIO, no modelo abaixo:
<activity android:name=".ResponseActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data
android:host="response"
android:scheme="order" />
</intent-filter>
</activity>
2) Para realizar a impressão, basta montar uma URL com o seguinte formato:
lio://print?request=$base64&urlCallback=order://response
Com essas informações eu desenvolvi a minha aplicação enviando intents para LIO com os comandos e os textos a serem impressos.
Estou consegundo imprimir, porém, quando eu imprimo, a aplicação da LIO que roda em segundo plano, responsável por receber os comandos e executar a impressão, abre e não fecha mais e sobrepõe a minha aplicação.
Eu estou usando esta rotina para imprimir:
Base64 := MinhaEncodeBase64(BytesOf(scheme));
Uri := 'lio://print?request='+Base64+'&urlCallback=order://response';
{$IFDEF ANDROID}
Imprime1 := TJIntent.Create;
Imprime1.setType(StringToJString('text/pas'));
Imprime1.setAction(TJIntent.JavaClass.ACTION_VIEW);
Imprime1 := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW,
TJnet_Uri.JavaClass.parse(StringToJString(TIdURI.URLEncode(uri))));
Imprime1.setData(StrToJURI(uri));
SharedActivity.startActivity(Imprime1);
{$ENDIF}
Por acaso alguém saberia dizer o que está errado?
Ficaria muito grato se alguém pudesse me dar uma ajuda.
De qualquer forma,
Desde já agradeço.
Marcio Dias Ramos.
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.