Les ressources publiques ciblent des modèles reproductibles. SDK, firmware et documents fabricant restreints restent dans leurs canaux approuvés.
Des preuves comparables avec méthode, version et limites.
- L'option exacte de l'imprimante, la largeur du papier et les types de sortie pris en charge.
- Une étiquette ou un reçu de test qui ne contient aucune donnée réelle sur le client ou le paiement.
- Un travailleur ou un propriétaire de coroutine qui peut sérialiser les travaux d'impression.
Norme de publication
Intégrer Android en entreprise avec des preuves versionnées.
Les ressources publiques ciblent des modèles reproductibles. SDK, firmware et documents fabricant restreints restent dans leurs canaux approuvés.
- 01
Créer un modèle d'une page
Conservez les éléments de texte, de code-barres et d’image à l’intérieur d’une page avec des contraintes explicites de largeur et de hauteur. Ne dispersez pas les coordonnées entre les gestionnaires de clics.
- 02
Vérifier l'état avant le rendu
Traitez l'occupation, le manque de papier, la surchauffe, la sous-tension et les erreurs de pilote comme des états d'opérateur distincts. Un message générique « échec d'impression » n'est pas suffisant pour la récupération.
- 03
Sérialiser et annuler
Désactivez la soumission en double pendant que le travailleur est propriétaire de l'imprimante. Une tâche annulée doit fermer la ressource et laisser un chemin de nouvelle tentative clair.
- 04
Valider la sortie physique
Mesurez la largeur du papier, la lisibilité des codes-barres, la quantité d'alimentation, le contraste, le comportement thermique et l'état de la batterie. Enregistrez la configuration du micrologiciel de l'imprimante et des accessoires.
Applications exemples / Kotlin
Modèles SDK et API
Le port possède les appels des fournisseurs et le mappage d'état. Le modèle de page reste utilisable dans un test unitaire.
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") }Distribution des SDK
Contrôle de publication
Aucun binaire fournisseur, référence d'API, firmware ou exemple de code source n'est publié sans autorisation de redistribution et périmètre pris en charge enregistrés.
Gardez le travail en file d'attente ou demandez à l'opérateur de réessayer ; ne soumettez pas d’appels de page parallèles.
Affichez l'action de récupération spécifique et attendez un nouvel état avant de réessayer.
Vérifiez la largeur de la page, la zone silencieuse et la taille du module pour connaître la configuration exacte de l'imprimante.
Annulez ou terminez conformément à la stratégie de travail, puis fermez l'imprimante dans le travailleur.
États de preuve
Des preuves comparables avec méthode, version et limites.
- 01
Imprimez du texte, un code-barres et une image avec la largeur de papier cible.
- 02
Interrompez l'opération et vérifiez que l'imprimante est libérée.
- 03
Testez les états d'occupation, de manque de papier, de chaleur, de tension et d'erreur de pilote.
- 04
Confirmez qu’aucune donnée client, de paiement ou d’identification n’est écrite dans les journaux ou les appareils.
Ressources
Modèles SDK et API
Aucun binaire fournisseur, référence d'API, firmware ou exemple de code source n'est publié sans autorisation de redistribution et périmètre pris en charge enregistrés.