Os recursos públicos focam padrões reproduzíveis. SDKs, firmware e documentos restritos continuam em canais aprovados.
Evidência comparável com método, versão e limites.
- A opção exata da impressora, largura do papel e tipos de saída suportados.
- Uma etiqueta ou recibo de teste que não contém dados reais de cliente ou pagamento.
- Um trabalhador ou proprietário de corrotina que pode serializar trabalhos de impressão.
Padrão de publicação
Integre Android empresarial com evidência versionada.
Os recursos públicos focam padrões reproduzíveis. SDKs, firmware e documentos restritos continuam em canais aprovados.
- 01
Crie um modelo de uma página
Mantenha elementos de texto, código de barras e imagem dentro de uma página com restrições explícitas de largura e altura. Não disperse as coordenadas pelos manipuladores de cliques.
- 02
Verifique o status antes de renderizar
Trate ocupado, sem papel, temperatura excessiva, subtensão e erro do driver como estados distintos do operador. Uma mensagem genérica de “falha na impressão” não é suficiente para a recuperação.
- 03
Serializar e cancelar
Desative o envio duplicado enquanto o trabalhador for proprietário da impressora. Um trabalho cancelado deve fechar o recurso e deixar um caminho de nova tentativa claro.
- 04
Valide a saída física
Meça a largura do papel, a legibilidade do código de barras, a quantidade de alimentação, o contraste, o comportamento do calor e as condições da bateria. Registre o firmware da impressora e a configuração dos acessórios.
Aplicações de exemplo / Kotlin
Padrões de SDK e API
A porta possui chamadas de fornecedores e mapeamento de status. O modelo de página permanece utilizável em um teste de unidade.
data class PrintJob(
val title: String,
val lines: List<String>,
val barcode: String?,
)
sealed interface PrintResult {
data object Printed : PrintResult
data class Blocked(val reason: String) : PrintResult
data class Failed(val reason: String) : PrintResult
}
interface PrintPort {
suspend fun print(job: PrintJob): PrintResult
}
suspend fun runPrint(port: PrintPort, job: PrintJob): PrintResult =
runCatching { port.print(job) }
.getOrElse { PrintResult.Failed("driver-error") }Distribuição de SDK
Controle de publicação
Nenhum binário do fornecedor, referência de API, firmware ou exemplo de código-fonte é publicado sem registrar a permissão de redistribuição e o escopo compatível.
Mantenha o trabalho na fila ou peça ao operador para tentar novamente; não envie chamadas de página paralela.
Mostre a ação de recuperação específica e aguarde um novo status antes de tentar novamente.
Verifique a largura da página, a zona silenciosa e o tamanho do módulo para obter a configuração exata da impressora.
Cancele ou termine de acordo com a política de trabalho e feche a impressora no trabalhador.
Estados da evidência
Evidência comparável com método, versão e limites.
- 01
Imprima texto, um código de barras e uma imagem com a largura de papel desejada.
- 02
Interrompa a operação e verifique se a impressora foi liberada.
- 03
Teste estados de ocupado, sem papel, calor, tensão e erro de driver.
- 04
Confirme se nenhum dado de cliente, pagamento ou credencial foi gravado em registros ou equipamentos.
Recursos
Padrões de SDK e API
Nenhum binário do fornecedor, referência de API, firmware ou exemplo de código-fonte é publicado sem registrar a permissão de redistribuição e o escopo compatível.