เนื้อหาทางเทคนิคเป็นหัวใจของ RuggedLayer แหล่งข้อมูลสาธารณะแสดงรูปแบบการเชื่อมต่ออุปกรณ์ที่ทำซ้ำได้และหลักฐานที่ต้องใช้เพื่อพาแอปเดิมไปสู่การใช้งานจริง ส่วน SDK ที่มีข้อจำกัดจะอยู่ในช่องทางแจกจ่ายที่ได้รับอนุมัติ
หลักฐานอุปกรณ์ที่เปรียบเทียบได้ พร้อมวิธีทดสอบ เวอร์ชัน และข้อจำกัด
- ฟังก์ชันโดเมนที่ใช้เหตุการณ์การจับภาพแบบมาตรฐาน
- กรอบการทดสอบที่ทำงานอยู่แล้วในโปรเจ็กต์
- กฎที่ชัดเจนสำหรับสิ่งที่ควรเกิดขึ้นกับค่าที่ซ้ำกัน ว่างเปล่า และไม่ถูกต้อง
มาตรฐานการเผยแพร่
สร้างและตรวจสอบการเชื่อมต่อ Android สำหรับองค์กรด้วยหลักฐานตามเวอร์ชัน
เนื้อหาทางเทคนิคเป็นหัวใจของ RuggedLayer แหล่งข้อมูลสาธารณะแสดงรูปแบบการเชื่อมต่ออุปกรณ์ที่ทำซ้ำได้และหลักฐานที่ต้องใช้เพื่อพาแอปเดิมไปสู่การใช้งานจริง ส่วน SDK ที่มีข้อจำกัดจะอยู่ในช่องทางแจกจ่ายที่ได้รับอนุมัติ
- 01
ขึ้นอยู่กับพอร์ตของคุณ ไม่ใช่คลาสอุปกรณ์
เวิร์กโฟลว์การรับควรรู้เกี่ยวกับ CaptureEvent และ CapturePort ไม่ควรนำเข้าตัวจัดการสแกนเนอร์ ค่าคงที่การออกอากาศ หรือประเภทเฉพาะรุ่น
- 02
ปล่อยเหตุการณ์ที่กำหนด
ให้วิธีการที่ชัดเจนแก่อะแดปเตอร์ปลอมสำหรับการสแกนที่ถูกต้อง การสแกนซ้ำ ค่าว่าง และความล้มเหลว การทดสอบสามารถอ่านได้เมื่ออินพุตอธิบายสถานการณ์ของผู้ปฏิบัติงาน
- 03
ยืนยันผลลัพธ์ทางธุรกิจ
ตรวจสอบความเคลื่อนไหวของสต็อก ข้อความยืนยัน และการจัดการซ้ำ อย่ายืนยันว่ามีการเรียกกลับผู้ขายจากการทดสอบทางธุรกิจ ที่อยู่ในการทดสอบอะแดปเตอร์ฮาร์ดแวร์
- 04
ทำให้การทดสอบฮาร์ดแวร์มีขนาดเล็ก
เมื่อมีอุปกรณ์พร้อมใช้งาน ให้รันการทดสอบควันแบบเน้นสำหรับการเปิด การทริกเกอร์ การถอดรหัส และการปิด ชุดเวิร์กโฟลว์ที่ใหญ่ขึ้นควรคงความรวดเร็วและไม่มีอุปกรณ์
แอปตัวอย่าง / Kotlin
รูปแบบ SDK และ API
การทดสอบเดิมสองครั้ง มีความปลอดภัยในการเผยแพร่เนื่องจากไม่มีคลาสผู้ขายหรือไบนารี
class FakeCapturePort : CapturePort {
private var listener: ((CaptureEvent) -> Unit)? = null
override fun open() = Unit
override fun start() = Unit
override fun stop() = Unit
override fun close() = Unit
override fun setListener(listener: (CaptureEvent) -> Unit) {
this.listener = listener
}
fun emit(value: String, symbology: String? = "test") {
listener?.invoke(CaptureEvent(value, symbology, Instant.now()))
}
}
@Test
fun receiving_a_valid_barcode_updates_stock() {
val scanner = FakeCapturePort()
val workflow = ReceivingWorkflow(scanner)
workflow.start()
scanner.emit("SKU-001")
assertEquals(ReceivingState.Accepted("SKU-001"), workflow.state)
}การแจกจ่าย SDK
เงื่อนไขการเผยแพร่
จะไม่เผยแพร่ไบนารี เอกสาร API, firmware หรือซอร์สตัวอย่างของผู้ขายจนกว่าจะบันทึกสิทธิ์แจกจ่ายต่อและขอบเขตที่รองรับ
ย้ายการตั้งค่าฮาร์ดแวร์ไปที่การทดสอบควันของอะแดปเตอร์ขนาดเล็ก และเก็บกฎโดเมนไว้บนพอร์ตปลอม
เพิ่มเหตุการณ์ที่ซ้ำกันอย่างชัดเจนและยืนยันการเปลี่ยนสถานะหนึ่งครั้ง
ปฏิเสธที่ขอบเขตการทำให้เป็นมาตรฐานและเปิดเผยสถานะที่ผู้ใช้สามารถกู้คืนได้
วิธีประเมินหลักฐาน
หลักฐานอุปกรณ์ที่เปรียบเทียบได้ พร้อมวิธีทดสอบ เวอร์ชัน และข้อจำกัด
- 01
รันการทดสอบอะแดปเตอร์ปลอมกับทุก ๆ บิลด์ CI
- 02
ครอบคลุมกรณีที่ถูกต้อง ว่างเปล่า ซ้ำ มีขนาดใหญ่เกินไป และการขนส่งล้มเหลว
- 03
เก็บอะแดปเตอร์เฉพาะอุปกรณ์ไว้หลังขอบเขตแพ็คเกจเดียว
- 04
เรียกใช้การทดสอบควันของอุปกรณ์จริงหนึ่งครั้งแยกกันสำหรับทุกการตรวจวัดพื้นฐานที่ได้รับอนุมัติ
แหล่งข้อมูล
รูปแบบ SDK และ API
จะไม่เผยแพร่ไบนารี เอกสาร API, firmware หรือซอร์สตัวอย่างของผู้ขายจนกว่าจะบันทึกสิทธิ์แจกจ่ายต่อและขอบเขตที่รองรับ