ตรวจหา eSIM และซิมการ์ด

อุปกรณ์ที่ใช้ Android ซึ่งมีซิมการ์ดและ eSIM จะใช้รหัสต่อไปนี้ใน API โทรศัพท์ ซึ่งรวมถึง TelephonyManager และ SubscriptionManager

  • รหัสการสมัครใช้บริการ: รหัสที่ไม่ซ้ำกันสำหรับการสมัครใช้บริการบนอุปกรณ์เคลื่อนที่
  • ดัชนีหรือรหัสช่องแบบลอจิคัล: ดัชนีที่ไม่ซ้ำกันซึ่งอ้างอิงถึงช่องซิมแบบลอจิคัล รหัสสล็อตเชิงตรรกะจะเริ่มต้นที่ 0 และเพิ่มขึ้นตามจำนวนสล็อตที่ใช้งานอยู่ซึ่งอุปกรณ์รองรับ เช่น อุปกรณ์แบบ 2 ซิมมักมี ช่อง 0 และช่อง 1 หากอุปกรณ์มีช่องจริงหลายช่องแต่รองรับช่องที่ใช้งานอยู่เพียงช่องเดียว อุปกรณ์จะมีเฉพาะรหัสช่องตรรกะ 0
  • ดัชนีหรือรหัสช่องจริง: ดัชนีที่ไม่ซ้ำกันซึ่งอ้างอิงถึงช่องซิมจริง รหัสสล็อตจริงจะเริ่มต้นที่ 0 และเพิ่มขึ้นตามจำนวนสล็อตจริง ในอุปกรณ์ ซึ่งแตกต่างจากจำนวนช่องตรรกะที่อุปกรณ์มี ซึ่งสอดคล้องกับจำนวนช่องที่ใช้งานอยู่ซึ่งอุปกรณ์สามารถใช้ได้ เช่น อุปกรณ์ที่สลับระหว่างโหมด 2 ซิมและโหมดซิมเดียว อาจมีช่องใส่ซิมจริง 2 ช่องเสมอ แต่ในโหมดซิมเดียวจะมี ช่องใส่ซิมเชิงตรรกะเพียงช่องเดียว
  • รหัสการ์ด: รหัสที่ไม่ซ้ำกันที่ใช้ในการระบุ UiccCard

แผนภาพแสดงวิธีใช้รหัสในเคสที่มีช่องตรรกะ 2 ช่องและช่องจริง 3 ช่อง

ในแผนภาพก่อนหน้า

  • อุปกรณ์มีช่องเสียบแบบตรรกะ 2 ช่อง
  • ในช่องจริง 0 มีการ์ด UICC จริงที่มีโปรไฟล์ที่ใช้งานอยู่
  • ในช่องจริง 2 มี eUICC ที่มีโปรไฟล์ที่ใช้งานอยู่
  • ขณะนี้ไม่ได้ใช้ช่องจริง 1

แผนภาพแสดงวิธีใช้รหัสในเคสที่มีสล็อตเชิงตรรกะ 3 ช่องและสล็อตจริง 2 ช่อง

ในแผนภาพก่อนหน้า

  • อุปกรณ์มีช่องตรรกะ 3 ช่อง
  • ในช่องจริง 0 มีการ์ด UICC จริงที่มีโปรไฟล์ที่ใช้งานอยู่
  • ในซิมจริงช่องที่ 1 คือ eUICC ที่มีโปรไฟล์ที่ดาวน์โหลด 2 รายการ ซึ่งทั้ง 2 รายการใช้งานอยู่โดยใช้ MEP (Multiple Enabled Profiles)

รองรับเครื่องอ่าน Open Mobile API (OMAPI)

ใน Android 11 ขึ้นไป Open Mobile API (OMAPI) รองรับการตรวจสอบฮาร์ดแวร์ที่รองรับ eSE, SD และ UICC ในอุปกรณ์ที่มีค่าสถานะต่อไปนี้

ใช้ค่าเหล่านี้กับ getSystemAvailableFeatures() หรือ hasSystemFeature() เพื่อตรวจสอบการรองรับอุปกรณ์