Publiczne zasoby koncentrują się na powtarzalnych wzorcach integracji. SDK, firmware i dokumenty objęte ograniczeniami pozostają w zatwierdzonych kanałach dystrybucji.
Porównywalne dane o urządzeniach z opisaną metodą, wersją i ograniczeniami.
- Aplikacja Android z jednym przepływem pracy, która wymaga wyniku w postaci kodu kreskowego.
- Zidentyfikowano dokładny model docelowy, zbudowano i zatwierdzono Android urządzenie SDK.
- Decyzja o transporcie klinowym, zamiarowym lub bezpośrednim SDK ; nie mieszaj ich przypadkowo.
Norma wydawnicza
Twórz i weryfikuj integracje firmowych aplikacji z urządzeniami Android na podstawie wersjonowanych danych.
Publiczne zasoby koncentrują się na powtarzalnych wzorcach integracji. SDK, firmware i dokumenty objęte ograniczeniami pozostają w zatwierdzonych kanałach dystrybucji.
- 01
Wybierz transport dla przepływu pracy
Użyj klina, gdy skupiona forma wymaga szybkiej modernizacji. Użyj wyraźnej intencji lub wywołania zwrotnego, gdy aplikacja jest właścicielem zdarzenia. Używaj urządzenia bezpośredniego API tylko za małym adapterem, aby ekrany biznesowe nie były zależne od typu dostawcy.
- 02
Zdefiniuj zdarzenie, którego właścicielem jest Twoja aplikacja
Zachowaj razem zdekodowany tekst, surowe bajty, symbolikę i otrzymany czas. Traktuj ładunek transportowy jako niezaufane dane wejściowe i odrzucaj brakujące, zbyt duże lub niemożliwe do zdekodowania dane, zanim dotrą one do logiki inwentaryzacji.
- 03
Otwieraj, słuchaj, uruchamiaj i zatrzymuj w jednym właścicielu
Zarejestruj ścieżkę wyniku przed rozpoczęciem dekodowania. Rozpocznij tylko raz, zatrzymaj po zakończeniu przepływu pracy i zamknij zasób urządzenia z każdej ścieżki wyjściowej, w tym tła, anulowania i błędów.
- 04
Udowodnij nieszczęśliwe ścieżki
Przetestuj pusty ładunek, zduplikowany wynik, przekroczenie limitu czasu, nieobsługiwaną symbolikę, wznowienie ekranu i urządzenie bez opcji skanera. Zielony skan na jednym urządzeniu nie jest stwierdzeniem zgodności dla każdej konfiguracji.
Przykładowe aplikacje / Kotlin
Wzorce SDK i API
Oryginalny wzór adaptera. Powiąż CapturePort z zatwierdzonym urządzeniem SDK w swoim prywatnym projekcie Android.
data class CaptureEvent(
val value: String,
val symbology: String?,
val capturedAt: Instant,
)
interface CapturePort {
fun open()
fun start()
fun stop()
fun close()
fun setListener(listener: (CaptureEvent) -> Unit)
}
class ScanWorkflow(private val scanner: CapturePort) {
private var active = false
fun begin(onCapture: (CaptureEvent) -> Unit) {
if (active) return
scanner.open()
scanner.setListener(onCapture)
scanner.start()
active = true
}
fun end() {
if (!active) return
runCatching { scanner.stop() }
runCatching { scanner.close() }
active = false
}
}Dystrybucja SDK
Warunki publikacji
Żadne pliki binarne dostawcy, odniesienia do API, oprogramowanie sprzętowe ani próbki źródłowe nie są publikowane, dopóki nie zostaną zarejestrowane uprawnienia do redystrybucji i obsługiwany zakres.
Zwróć błąd wejściowy i zachowaj przepływ pracy dostępny do kolejnego skanowania.
Deduplikacja za pomocą krótkotrwałego klucza zdarzenia; nigdy po cichu nie odbieraj podwójnie zapasów.
Zatrzymaj bieżącą operację, pokaż stan możliwy do odzyskania i zezwól na kontrolowaną ponowną próbę.
Zatrzymaj lub wstrzymaj zgodnie z umową przepływu pracy, a następnie zarejestruj się ponownie bezpiecznie po wznowieniu.
Status dowodów
Porównywalne dane o urządzeniach z opisaną metodą, wersją i ograniczeniami.
- 01
Nagraj model, opcję skanera, kompilację Android, oprogramowanie sprzętowe i wersję SDK.
- 02
Uruchom zimny start, powtórz start/stop, tło/resume i testy anulowania.
- 03
Użyj kodu 128, uszkodzonej etykiety, pustego wyzwalacza i jednej nieobsługiwanej symboliki.
- 04
Upewnij się, że w zwykłych dziennikach nie są zapisywane żadne nieprzetworzone dane skanowania ani identyfikator klienta.
Zasoby
Wzorce SDK i API
Żadne pliki binarne dostawcy, odniesienia do API, oprogramowanie sprzętowe ani próbki źródłowe nie są publikowane, dopóki nie zostaną zarejestrowane uprawnienia do redystrybucji i obsługiwany zakres.