สำหรับอุปกรณ์ที่ใช้ Android 12 ขึ้นไป Android รองรับการแบ่งส่วนเครือข่าย 5G ซึ่งเป็นการใช้การจำลองเสมือนของเครือข่ายเพื่อ แบ่งการเชื่อมต่อเครือข่ายเดียวออกเป็นการเชื่อมต่อเสมือนที่แตกต่างกันหลายรายการ ซึ่งให้ทรัพยากรในปริมาณที่แตกต่างกันแก่การเข้าชมประเภทต่างๆ การแบ่งส่วนเครือข่าย 5G ช่วยให้ผู้ให้บริการเครือข่ายสามารถจัดสรรส่วนหนึ่งของเครือข่ายเพื่อ ให้บริการฟีเจอร์ที่เฉพาะเจาะจงสำหรับกลุ่มลูกค้าที่เฉพาะเจาะจง Android 12 ขอแนะนำความสามารถในการแบ่งส่วนเครือข่าย 5G สำหรับองค์กรต่อไปนี้ ซึ่งผู้ให้บริการเครือข่าย สามารถมอบให้แก่ลูกค้าองค์กรได้
การแบ่งส่วนอุปกรณ์ขององค์กรสำหรับอุปกรณ์ที่มีการจัดการครบวงจร
สำหรับองค์กรที่มอบอุปกรณ์ของบริษัทที่มีการจัดการเต็มรูปแบบให้แก่พนักงาน ผู้ให้บริการเครือข่ายสามารถมอบ Network Slice ขององค์กรที่ใช้งานอยู่ 1 รายการขึ้นไปให้แก่พนักงาน ซึ่งจะมีการกำหนดเส้นทาง การรับส่งข้อมูลในอุปกรณ์ของบริษัทไปยัง Network Slice เหล่านั้น ตั้งแต่ Android 12 เป็นต้นไป Android อนุญาตให้ผู้ให้บริการ ระบุการแบ่งส่วนเครือข่ายสำหรับองค์กรผ่านกฎ URSP แทนการตั้งค่าการแบ่งส่วนเครือข่าย ผ่าน APN
การแบ่งแอปธุรกิจระดับองค์กรสำหรับอุปกรณ์ที่มีโปรไฟล์งาน
สำหรับองค์กรที่ใช้โซลูชันโปรไฟล์งาน Android 12 จะอนุญาตให้อุปกรณ์กำหนดเส้นทางการรับส่งข้อมูลจากแอปทั้งหมดในโปรไฟล์งานไปยังการแบ่งส่วนเครือข่ายขององค์กร องค์กรสามารถเปิดใช้ความสามารถนี้ผ่านเครื่องมือควบคุมนโยบายด้านอุปกรณ์ (DPC)
โซลูชันโปรไฟล์งานมีการตรวจสอบสิทธิ์และการควบคุมการเข้าถึงระดับอัตโนมัติที่องค์กรต้องการเพื่อให้มั่นใจว่าระบบจะกำหนดเส้นทางการรับส่งข้อมูลจากแอปขององค์กรในโปรไฟล์งานไปยัง Network Slice ขององค์กรเท่านั้น ไม่จำเป็นต้องแก้ไขแอปในโปรไฟล์งานเพื่อขอ Network Slice ขององค์กรอย่างชัดแจ้ง
วิธีทำงานของการแบ่งเครือข่าย 5G ใน AOSP
Android 12 เปิดตัวการรองรับการแบ่งเครือข่าย 5G โดยการเพิ่มฐานของโค้ดโทรศัพท์ใน AOSP และโมดูลการเชื่อมต่ออินเทอร์เน็ตผ่านมือถือ เพื่อรวม API การเชื่อมต่อที่มีอยู่ซึ่งจำเป็นสำหรับการแบ่งเครือข่าย
แพลตฟอร์มโทรศัพท์ Android มี HAL และ Telephony API เพื่อรองรับ การแบ่งส่วนตามคำขอเครือข่ายที่ยื่นโดยโค้ดเครือข่ายหลักและความสามารถในการแบ่งส่วน 5G ในโมเด็ม รูปที่ 1 อธิบายส่วนประกอบของฟีเจอร์ Network Slicing 5G
รูปที่ 1 สถาปัตยกรรมการแบ่งส่วนเครือข่าย 5G ใน AOSP
แพลตฟอร์มโทรศัพท์และการเชื่อมต่อรองรับสิ่งต่อไปนี้
- แปลงคำขอเครือข่ายสำหรับหมวดหมู่สไลซ์เป็นตัวอธิบายการเข้าชม ซึ่งจะส่งไปยังโมเด็มเพื่อการจับคู่การเข้าชม URSP และการเลือกเส้นทาง
- เปลี่ยนกลับไปใช้เครือข่ายเริ่มต้นหาก Network Slice ขององค์กรไม่พร้อมใช้งาน
- กำหนดเส้นทางการรับส่งข้อมูลจากแอปทั้งหมดในโปรไฟล์งานไปยัง การเชื่อมต่อที่เกี่ยวข้อง
การรองรับการแบ่งส่วนเครือข่ายสำหรับองค์กร
- การตรวจหาการมีโปรไฟล์งานในอุปกรณ์
- ตรวจสอบสิทธิ์หรือเส้นทางการกำหนดเส้นทางที่ได้รับจาก DPC ที่ผู้ดูแลระบบไอทีขององค์กรใช้
บริการเครือข่ายหลักมีการเปลี่ยนแปลงต่อไปนี้ในโมดูลการแชร์อินเทอร์เน็ต ใน Android 12
- เพิ่มคลาส API สาธารณะหรือระบบส่วนใหญ่ของ
android.net.*ลงในโมดูลการเชื่อมต่ออินเทอร์เน็ตผ่านมือถือ ขยายขอบเขตของโมดูลการเชื่อมต่ออินเทอร์เน็ตผ่านมือถือให้รวมถึงรายการต่อไปนี้
f/b/core/java/android/net/…f/b/services/net/…f/b/services/core/java/com/android/server/connectivity/…f/b/services/core/java/com/android/server/ConnectivityService.javaf/b/services/core/java/com/android/server/TestNetworkService.java
ย้ายโค้ด VPN ออกจากโมดูลการแชร์อินเทอร์เน็ต
Android 12 ย้ายโค้ดที่มีความสามารถต่อไปนี้ ไปยังโมดูลการแชร์อินเทอร์เน็ต
- การรับคำขอจากแอปสำหรับการเชื่อมต่อเครือข่าย
- รับคำขอจากระบบ (เช่น "วางแอปเหล่านี้ใน ส่วนขององค์กร" ซึ่งเปิดตัวใน Android 12)
- การส่งคำขอจากระบบไปยังโค้ดโทรศัพท์ซึ่งพยายาม ตั้งค่าเครือข่ายหรือสไลซ์โดยผ่าน HAL API และโมเด็ม
- การแจ้ง netd เกี่ยวกับวิธีกำหนดเส้นทางการรับส่งข้อมูลต่อแอป (เปิดตัวใน Android 12)
- แจ้งให้แอปทราบว่าเกิดอะไรขึ้นกับการรับส่งข้อมูลเครือข่ายผ่าน
ConnectivityManagerAPI เช่นNetworkCallback,getActiveNetworkgetNetworkCapabilities
การใช้งาน
หากต้องการรองรับการแบ่งส่วนเครือข่าย 5G ในอุปกรณ์ อุปกรณ์ต้องมีโมเด็มที่รองรับ
IRadio 1.6 HAL ซึ่งมี
setupDataCall_1_6
API API นี้จะตั้งค่าการเชื่อมต่อข้อมูลและมีพารามิเตอร์ต่อไปนี้
เพื่อรองรับการแบ่งส่วนเครือข่าย 5G
trafficDescriptor: ระบุตัวอธิบายการเข้าชมที่ส่งไปยังโมเด็มsliceInfo: ระบุข้อมูลสำหรับ Network Slice ที่จะใช้ในกรณีที่มีการส่งต่อจาก ePDG ไปยัง 5GmatchAllRuleAllowed: ระบุว่าอนุญาตให้ใช้กฎ URSP เริ่มต้นที่ตรงกันทั้งหมดหรือไม่ Telephony จะตั้งค่านี้เป็น "จริง" สำหรับเครือข่ายเริ่มต้น แต่ไม่ใช่สำหรับสไลซ์ ระบบจะใช้กฎการจับคู่ทั้งหมดกับเครือข่ายเริ่มต้น เมื่อแอปขอสไลซ์ที่เฉพาะเจาะจงซึ่งไม่พร้อมใช้งาน ระบบจะรายงานว่าสไลซ์ที่เฉพาะเจาะจงนั้นไม่พร้อมใช้งาน สำหรับ แอปขององค์กร เฟรมเวิร์ก Telephony จะกลับไปใช้ เครือข่ายเริ่มต้นได้หากเครือข่ายขององค์กรไม่พร้อมใช้งาน
โมเด็มต้องใช้
getSlicingConfig
API ด้วย เว้นแต่จะมีการรายงานว่า
getHalDeviceCapabilities
API ไม่รองรับ
ข้อกำหนดสำหรับองค์กร
ต่อไปนี้คือข้อกำหนดสำหรับองค์กรในการใช้การแบ่งเครือข่าย 5G ในอุปกรณ์ในการติดตั้งใช้งาน Android Enterprise
- ตรวจสอบว่าอุปกรณ์ที่มีการจัดการครบวงจรหรืออุปกรณ์ของพนักงานที่ตั้งค่าด้วยโปรไฟล์งาน
รองรับ 5G SA พร้อมโมเด็มที่รองรับ
setupDataCall_1_6API - ทำงานร่วมกับพาร์ทเนอร์ผู้ให้บริการในการตั้งค่าและประสิทธิภาพของสไลซ์ หรือลักษณะ SLA
เปิดใช้การแบ่งส่วนเครือข่าย 5G ในอุปกรณ์ที่ตั้งค่าด้วยโปรไฟล์งาน
สำหรับอุปกรณ์ที่ตั้งค่าด้วยโปรไฟล์งาน การแบ่งส่วนเครือข่าย 5G จะปิดอยู่โดยค่าเริ่มต้นใน AOSP หากต้องการเปิดใช้การแบ่งส่วนเครือข่าย ผู้ดูแลระบบไอทีขององค์กรสามารถเปิดหรือปิดการกำหนดเส้นทางการรับส่งข้อมูลของแอปในโปรไฟล์งานไปยังการแบ่งส่วนเครือข่ายขององค์กรได้โดยอิงตามพนักงานแต่ละรายผ่าน DPC ของ EMM ซึ่งใช้เมธอด setPreferentialNetworkServiceEnabled
ใน API ของDevicePolicyManager (DPM) (เปิดตัวใน Android 12)
ผู้ให้บริการ EMM ที่มี DPC ที่กำหนดเองต้องผสานรวม DevicePolicyManager API เพื่อ
รองรับลูกค้าองค์กร
กฎ URSP
ส่วนนี้มีข้อมูลสำหรับผู้ให้บริการเกี่ยวกับการกำหนดค่ากฎ URSP สำหรับ หมวดหมู่สไลซ์ต่างๆ ซึ่งรวมถึงการรับส่งข้อมูลขององค์กร CBS เวลาในการตอบสนองต่ำ แบนด์วิดท์สูง และการสื่อสารแบบครบวงจร
เมื่อกำหนดค่ากฎ URSP ผู้ให้บริการสามารถใช้ตัวอธิบายการรับส่งข้อมูลตามปัจจัยต่อไปนี้
- ประเภทรหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการ ประเภทคอมโพเนนต์
0x08รองรับใน Android 12 ขึ้นไป - ประเภทความสามารถในการเชื่อมต่อ ประเภทคอมโพเนนต์
0x90รองรับใน Android 17 ขึ้นไป
รหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการ
เมื่อกำหนดค่ากฎ URSP โดยใช้คอมโพเนนต์ตัวอธิบายการรับส่งข้อมูลประเภทรหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการ ผู้ให้บริการสามารถใช้ค่ารหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการที่เฉพาะเจาะจงสำหรับ Android ต่อไปนี้
| รหัส | ค่า | คำอธิบาย |
|---|---|---|
| รหัสระบบปฏิบัติการ | 97a498e3-fc92-5c94-8986-0333d06e4e47 |
รหัสระบบปฏิบัติการสำหรับ Android คือ UUID เวอร์ชัน 5 ที่สร้างขึ้นด้วยเนมสเปซ ISO OID และชื่อ Android |
ผู้ให้บริการที่กำหนดค่ากฎ URSP โดยใช้ประเภทรหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการต้อง
กำหนดค่าการรับส่งข้อมูลแต่ละสไลซ์ด้วยคอมโพเนนต์ตัวอธิบายการรับส่งข้อมูลเป็น
การต่อกันของรหัสระบบปฏิบัติการ ความยาวของรหัสแอปของระบบปฏิบัติการ (0x0A) และรหัส
แอปของระบบปฏิบัติการ เช่น สไลซ์ ENTERPRISE ต้องมีค่าเป็น
0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345
ดูข้อมูลเพิ่มเติมเกี่ยวกับประเภทคอมโพเนนต์ของตัวอธิบายการรับส่งได้ที่
3GPP TS 24.526 ตาราง 5.2.1
ตารางต่อไปนี้อธิบายค่า OSAppId สำหรับหมวดหมู่สไลซ์ต่างๆ
| หมวดหมู่ของชิ้น | OSAppId | คำอธิบาย |
|---|---|---|
ENTERPRISE |
0x454E5445525052495345 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง ENTERPRISE |
ENTERPRISE2 |
0x454E544552505249534532 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง ENTERPRISE2 |
ENTERPRISE3 |
0x454E544552505249534533 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง ENTERPRISE3 |
ENTERPRISE4 |
0x454E544552505249534534 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง ENTERPRISE4 |
ENTERPRISE5 |
0x454E544552505249534535 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง ENTERPRISE5 |
CBS |
0x434253 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง CBS |
PRIORITIZE_LATENCY |
0x5052494f524954495a455f4c4154454e4359 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง PRIORITIZE_LATENCY |
PRIORITIZE_BANDWIDTH |
0x5052494f524954495a455f42414e445749445448 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง PRIORITIZE_BANDWIDTH |
PRIORITIZE_UNIFIED_COMMUNICATIONS |
0x5052494f524954495a455f554e49464945445f434f4d4d554e49434154494f4e53 |
OSAppId คือการแสดงอาร์เรย์ไบต์ของสตริง PRIORITIZE_UNIFIED_COMMUNICATIONS |
เราไม่มีแผนที่จะเปิดตัวค่า OSAppId ใหม่ เราจะปรับปรุงตัวอธิบายการเข้าชมความสามารถในการเชื่อมต่อตามความจำเป็น
ความสามารถในการเชื่อมต่อ
ตั้งแต่ Android 17 ขึ้นไป (Radio HAL AIDL 2.5 ขึ้นไป)
Android รองรับคอมโพเนนต์ตัวอธิบายการรับส่งข้อมูลความสามารถในการเชื่อมต่อ
(ประเภท 0x90) ที่กำหนดไว้ในตาราง 5.2.1 ของ 3GPP TS 24.526
เมื่อแอปหรือบริการของระบบขอเครือข่ายที่มีความสามารถเฉพาะ
สแต็กข้อมูลโทรศัพท์ของ Android จะแมป NetworkCapabilities ที่ขอ
กับค่าความสามารถในการเชื่อมต่อมาตรฐานที่ป้อนใน TrafficDescriptor
ซึ่งส่งไปยังโมเด็มระหว่างการตั้งค่าการโทรผ่านข้อมูล (setupDataCall)
แม้ว่าข้อกำหนด 3GPP จะอนุญาตให้มีความสามารถในการเชื่อมต่อหลายรายการใน
ตัวอธิบายเดียว แต่เฟรมเวิร์กโทรศัพท์ของ Android 17 จะแมปความสามารถในการเชื่อมต่อหลายรายการที่ขอไปยังความสามารถในการเชื่อมต่อรายการเดียว
ตารางต่อไปนี้อธิบายการแมปเริ่มต้นจากความสามารถของเครือข่าย Android ไปยังความสามารถในการเชื่อมต่อ 3GPP
| ความสามารถของเครือข่าย | ความสามารถในการเชื่อมต่อ | ค่า (ฐาน 16 หรือฐาน 10) | คำอธิบาย |
|---|---|---|---|
NET_CAPABILITY_IMS |
CONNECTION_CAPABILITY_IMS |
0x01 (1) |
การสื่อสารด้วยเสียงและวิดีโอผ่าน IMS |
NET_CAPABILITY_MMS |
CONNECTION_CAPABILITY_MMS |
0x02 (2) |
การรับส่งข้อมูล MMS |
NET_CAPABILITY_SUPL |
CONNECTION_CAPABILITY_SUPL |
0x04 (4) |
Secure User Plane Location (SUPL) |
NET_CAPABILITY_INTERNET |
CONNECTION_CAPABILITY_INTERNET |
0x08 (8) |
การรับส่งข้อมูลทางอินเทอร์เน็ตเริ่มต้น |
NET_CAPABILITY_PRIORITIZE_LATENCY |
CONNECTION_CAPABILITY_REAL_TIME_INTERACTIVE |
0xA6 (166) |
การรับส่งข้อมูลแบบอินเทอร์แอกทีฟแบบเรียลไทม์ (เช่น เกม, AR/VR) |
NET_CAPABILITY_PRIORITIZE_BANDWIDTH |
CONNECTION_CAPABILITY_DOWNLINK_STREAMING |
0xA3 (163) |
การรับส่งข้อมูลการสตรีมแบนด์วิดท์สูงในลิงก์ดาวน์ |
NET_CAPABILITY_PRIORITIZE_UNIFIED_COMMUNICATIONS |
CONNECTION_CAPABILITY_UNIFIED_COMMUNICATIONS |
0xA7 (167) |
การสื่อสารแบบครบวงจร (เช่น การโทรด้วยเสียงหรือวิดีโอคอลผ่าน OTT) |
การกำหนดค่า URSP ของผู้ให้บริการและความเข้ากันได้แบบย้อนหลัง
ผู้ให้บริการควรพิจารณาพฤติกรรมต่อไปนี้เมื่อจัดสรรกฎ URSP เพื่อให้มั่นใจว่าการทำงานจะราบรื่นในอุปกรณ์ที่มี HAL และระบบปฏิบัติการเวอร์ชันต่างๆ
- อุปกรณ์ที่ใช้ Android 16 หรือต่ำกว่า (Radio HAL AIDL 2.4 และต่ำกว่า): โมเด็มจะได้รับอย่างน้อย
OSAppIdในตัวอธิบายการรับส่ง - อุปกรณ์ที่ใช้ Android 17 ขึ้นไป (AIDL 2.5
ขึ้นไป): สำหรับความสามารถของสไลซ์พรีเมียม (เช่น เวลาในการตอบสนองต่ำ แบนด์วิดท์สูง และการสื่อสารแบบรวม) แพลตฟอร์มจะป้อนข้อมูล
OSAppId,ConnectionCapabilityหรือทั้ง 2 อย่างในตัวอธิบายการรับส่งข้อมูล
ผู้ให้บริการสามารถกำหนดค่ากฎ URSP ได้โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้
- กฎตามลำดับความสำคัญ (แนะนำ):
- กฎ A (ลำดับความสำคัญสูงกว่า หมายเลขลำดับความสำคัญต่ำกว่า เช่น
10): จับคู่ตามความสามารถในการเชื่อมต่อ (เช่น
0xA6สำหรับเวลาในการตอบสนองต่ำ0xA3สำหรับแบนด์วิดท์สูง หรือ0xA7สำหรับการสื่อสารแบบรวม ) อุปกรณ์ Android 17 ขึ้นไปจะจับคู่กับกฎนี้ก่อน - กฎ B (ลำดับความสำคัญต่ำกว่า หมายเลขลำดับความสำคัญสูงกว่า เช่น
20): ตรงกับประเภทรหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการ (เช่น
PRIORITIZE_LATENCY) อุปกรณ์รุ่นเก่าที่ไม่รองรับความสามารถในการเชื่อมต่อ ใน HAL จะตรงกับกฎสำรองนี้
- กฎ A (ลำดับความสำคัญสูงกว่า หมายเลขลำดับความสำคัญต่ำกว่า เช่น
10): จับคู่ตามความสามารถในการเชื่อมต่อ (เช่น
- กฎที่ใช้รหัสแอปของระบบปฏิบัติการเท่านั้น (เดิม):
- ผู้ให้บริการจะใช้กฎ URSP ที่มีอยู่ต่อไปได้โดยอิงตามประเภทรหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการ
เนื่องจากอุปกรณ์ Android 17 ขึ้นไป
ยังคงผ่าน
OSAppIdทั้งอุปกรณ์ใหม่และเก่า จึงเป็นไปตามกฎเหล่านี้ได้สำเร็จ
- ผู้ให้บริการจะใช้กฎ URSP ที่มีอยู่ต่อไปได้โดยอิงตามประเภทรหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการ
เนื่องจากอุปกรณ์ Android 17 ขึ้นไป
ยังคงผ่าน
- กฎที่รวมกัน (เงื่อนไข AND):
- ผู้ให้บริการสามารถระบุทั้งรหัสระบบปฏิบัติการและรหัสแอปของระบบปฏิบัติการ รวมถึงความสามารถในการเชื่อมต่อภายในตัวอธิบายการรับส่งข้อมูลเดียว กฎนี้ จะตรงกันเฉพาะในอุปกรณ์ที่ใช้ Android 17 ขึ้นไปที่มี AIDL 2.5 ขึ้นไป
ตัวอย่างกฎ URSP
ตารางต่อไปนี้แสดงตัวอย่างกฎ URSP สำหรับการเข้าชมขององค์กร, CBS, เวลาในการตอบสนองต่ำ, แบนด์วิดท์สูง, การสื่อสารแบบครบวงจร และการเข้าชมเริ่มต้น
Enterprise 1
การรองรับ Enterprise 1 พร้อมใช้งานใน Android 12 ขึ้นไป
ต่อไปนี้คือตัวอย่างกฎ URSP สำหรับการรับส่งข้อมูล ENTERPRISE1
| กฎ URSP 1 (ENTERPRISE1) | |
|---|---|
| ลำดับความสำคัญ | 1 (0x01) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E470A454E5445525052495345 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | องค์กร |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | องค์กร |
Enterprise 2
การรองรับ Enterprise 2 พร้อมใช้งานใน Android 13 ขึ้นไป
ต่อไปนี้คือตัวอย่างกฎ URSP สำหรับการรับส่งข้อมูล ENTERPRISE2
| กฎ URSP 2 (ENTERPRISE2) | |
|---|---|
| ลำดับความสำคัญ | 2 (0x02) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534532 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | enterprise2 |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | enterprise2 |
Enterprise 3
การรองรับ Enterprise 3 พร้อมใช้งานใน Android 13 ขึ้นไป
ต่อไปนี้คือตัวอย่างกฎ URSP สำหรับการรับส่งข้อมูล ENTERPRISE3
| กฎ URSP 3 (ENTERPRISE3) | |
|---|---|
| ลำดับความสำคัญ | 3 (0x03) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534533 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | enterprise3 |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | enterprise3 |
Enterprise 4
การรองรับ Enterprise 4 พร้อมใช้งานใน Android 13 ขึ้นไป
ต่อไปนี้คือตัวอย่างกฎ URSP สำหรับการรับส่งข้อมูล ENTERPRISE4
| กฎ URSP 4 (ENTERPRISE4) | |
|---|---|
| ลำดับความสำคัญ | 4 (0x04) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534534 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | enterprise4 |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | enterprise4 |
Enterprise 5
การรองรับ Enterprise 5 พร้อมให้บริการใน Android 13 ขึ้นไป
ต่อไปนี้คือตัวอย่างกฎ URSP สำหรับการรับส่งข้อมูล ENTERPRISE5
| กฎ URSP 5 (ENTERPRISE5) | |
|---|---|
| ลำดับความสำคัญ | 5 (0x05) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E470B454E544552505249534535 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | enterprise5 |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | enterprise5 |
CBS
การรองรับ CBS พร้อมใช้งานใน Android 13 ขึ้นไป ตัวอย่างกฎ URSP สำหรับการรับส่งข้อมูล CBS มีดังนี้
| กฎ URSP 6 (CBS) | |
|---|---|
| ลำดับความสำคัญ | 6 (0x06) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E4703434253 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | cbs |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | cbs |
เวลาในการตอบสนองต่ำพร้อมความสามารถในการเชื่อมต่อ
การรองรับความสามารถในการเชื่อมต่อในกฎ URSP พร้อมใช้งานใน Android 17 ขึ้นไป ต่อไปนี้เป็นตัวอย่าง กฎ URSP สำหรับการรับส่งข้อมูลที่มีเวลาในการตอบสนองต่ำโดยใช้ตัวอธิบายความสามารถในการเชื่อมต่อ
| กฎ URSP 7 (เวลาในการตอบสนองต่ำที่มีความสามารถในการเชื่อมต่อ) | |
|---|---|
| ลำดับความสำคัญ | 7 (0x07) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทความสามารถในการเชื่อมต่อ | 0xA6 (166: อินเทอร์แอกทีฟแบบเรียลไทม์) |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | เวลาในการตอบสนอง |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | เวลาในการตอบสนอง |
เวลาในการตอบสนองต่ำด้วย OSAppId
การรองรับเวลาในการตอบสนองต่ำพร้อมใช้งานใน Android 13 ขึ้นไป
ต่อไปนี้คือตัวอย่างกฎ URSP สำหรับLOW_LATENCY
การรับส่งข้อมูลที่ใช้ OSAppId
| กฎ URSP 8 (เวลาในการตอบสนองต่ำพร้อมการสำรองข้อมูล OSAppId) | |
|---|---|
| ลำดับความสำคัญ | 8 (0x08) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E47125052494f524954495a455f4c4154454e4359 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | เวลาในการตอบสนอง |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | เวลาในการตอบสนอง |
แบนด์วิดท์สูงพร้อมความสามารถในการเชื่อมต่อ
การรองรับความสามารถในการเชื่อมต่อในกฎ URSP พร้อมใช้งานใน Android 17 ขึ้นไป ต่อไปนี้เป็นตัวอย่างกฎ URSP สำหรับการเข้าชมที่มีแบนด์วิดท์สูงโดยใช้ตัวอธิบายความสามารถในการเชื่อมต่อ
| กฎ URSP 9 (แบนด์วิดท์สูงที่มีความสามารถในการเชื่อมต่อ) | |
|---|---|
| ลำดับความสำคัญ | 9 (0x09) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทความสามารถในการเชื่อมต่อ | 0xA3 (163: การสตรีมมิงขาลง) |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | แบนด์วิดท์ |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | แบนด์วิดท์ |
แบนด์วิดท์สูงที่มี OSAppId
การรองรับแบนด์วิดท์สูงพร้อมใช้งานใน Android 13 ขึ้นไป
ต่อไปนี้คือตัวอย่างกฎ URSP สำหรับHIGH_BANDWIDTH
การรับส่งข้อมูลที่ใช้ OSAppId
| กฎ URSP 10 (แบนด์วิดท์สูงที่มีการเปลี่ยนไปใช้ OSAppId) | |
|---|---|
| ลำดับความสำคัญ | 10 (0x0A) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E47145052494f524954495a455f42414e445749445448 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
| ส่วนประกอบที่ 2: DNN | แบนด์วิดท์ |
| ตัวอธิบายการเลือกเส้นทาง #2 | |
| ลำดับความสำคัญ | 2 (0x02) |
| คอมโพเนนต์ #1: DNN | แบนด์วิดท์ |
การสื่อสารแบบรวมที่มีความสามารถในการเชื่อมต่อ
การรองรับการสื่อสารแบบครบวงจรพร้อมให้บริการใน Android 17 ขึ้นไป ต่อไปนี้เป็นตัวอย่าง
กฎ URSP สำหรับUNIFIED_COMMUNICATIONS การรับส่งข้อมูลที่ใช้ความสามารถในการเชื่อมต่อ
เนื่องจากการรับส่งข้อมูลการสื่อสารแบบครบวงจรจะกำหนดเส้นทางผ่านการเชื่อมต่ออินเทอร์เน็ตเริ่มต้น
การเชื่อมต่อข้อมูล จึงไม่จำเป็นต้องมี APN (DNN) เฉพาะในตัวอธิบายการเลือกเส้นทาง
| กฎ URSP 11 (การสื่อสารแบบครบวงจรที่มีความสามารถในการเชื่อมต่อ) | |
|---|---|
| ลำดับความสำคัญ | 11 (0x0B) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทความสามารถในการเชื่อมต่อ | 0xA7 (167: การสื่อสารแบบครบวงจร) |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
การสื่อสารที่เป็นหนึ่งเดียวด้วย OSAppId
การรองรับการสื่อสารแบบครบวงจรพร้อมให้บริการใน Android 17 ขึ้นไป ต่อไปนี้คือตัวอย่าง
กฎ URSP สำหรับการเข้าชม UNIFIED_COMMUNICATIONS โดยใช้ OSAppId
| กฎ URSP 12 (การสื่อสารแบบครบวงจรที่มีการสำรองข้อมูล OSAppId) | |
|---|---|
| ลำดับความสำคัญ | 12 (0x0C) |
| ตัวอธิบายการเข้าชม #1 | |
| ประเภทรหัสระบบปฏิบัติการ + รหัสแอปในระบบปฏิบัติการ | 0x97A498E3FC925C9489860333D06E4E47215052494F524954495A455F554E49464945445F434F4D4D554E49434154494F4E53 |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
ค่าเริ่มต้น
| กฎ URSP 13 (ค่าเริ่มต้น) | |
|---|---|
| ลำดับความสำคัญ | 13 (0x0D) |
| ตัวอธิบายการเข้าชม #1 | |
| match-all | ไม่มี |
| ตัวอธิบายการเลือกเส้นทาง #1 | |
| ลำดับความสำคัญ | 1 (0x01) |
| คอมโพเนนต์ #1: S-NSSAI | SST:XX SD:YYYYYY |
การทดสอบ
หากต้องการทดสอบการแบ่งเครือข่าย 5G ให้ใช้การทดสอบด้วยตนเองต่อไปนี้
หากต้องการตั้งค่าอุปกรณ์สำหรับการทดสอบ ให้ทำดังนี้
ตรวจสอบว่าได้กำหนดค่านโยบาย URSP ด้วยกฎที่ไม่ใช่ค่าเริ่มต้นซึ่ง ตรงกับหมวดหมู่องค์กร และตัวอธิบายการเลือกเส้นทางที่เกี่ยวข้อง แมปหมวดหมู่องค์กรกับสไลซ์องค์กร รวมถึงกฎเริ่มต้น ที่นำการรับส่งข้อมูลไปยังสไลซ์อินเทอร์เน็ตเริ่มต้น
ตรวจสอบว่าได้กำหนดค่าโปรไฟล์งานในอุปกรณ์แล้ว
เลือกใช้การแบ่งเครือข่ายผ่าน DPC
หากต้องการทดสอบลักษณะการทำงานของการแบ่งเครือข่าย 5G ให้ทำดังนี้
- ตรวจสอบว่ามีการสร้างเซสชัน PDU ด้วยสไลซ์ขององค์กร (เช่น โดยใช้ที่อยู่ IP ที่เฉพาะเจาะจง) และแอปในโปรไฟล์งานใช้เซสชัน PDU นั้น
- ตรวจสอบว่ามีการสร้างเซสชัน PDU แยกต่างหากด้วยสไลซ์อินเทอร์เน็ตเริ่มต้น และแอปในโปรไฟล์ส่วนตัวใช้เซสชัน PDU
การอัปเซลล์การแบ่งส่วนเครือข่าย 5G
ฟีเจอร์การขายอัปเซลล์การแบ่งส่วน 5G ซึ่งพร้อมใช้งานตั้งแต่ Android 14 QPR1 ช่วยให้ผู้ให้บริการสามารถนำเสนอความสามารถของเครือข่ายที่ได้รับการปรับปรุง (เวลาในการตอบสนองและแบนด์วิดท์) แก่ผู้ใช้ผ่านการแบ่งส่วนเครือข่าย 5G
ฟีเจอร์การขายอัปเซลล์การแบ่งส่วนเครือข่าย 5G ใช้การตอบกลับ TS.43 จากเซิร์ฟเวอร์การให้สิทธิ์ของผู้ให้บริการ เพื่อกระตุ้นขั้นตอนการซื้อ ผู้ให้บริการสามารถใช้การตอบกลับเพื่อ ระบุ URL สำหรับ WebView การซื้อของผู้ให้บริการ ส่งข้อมูลเพิ่มเติมไปยัง WebView และระบุว่ามีการจัดสรรและพร้อมใช้งานใน เครือข่ายของผู้ให้บริการหรือไม่
ผู้ให้บริการเครือข่ายสามารถปรับแต่งลักษณะการทำงานของฟีเจอร์การขายอัปเซลล์การแบ่งส่วนเครือข่าย 5G ได้โดยใช้การกำหนดค่าของผู้ให้บริการเครือข่าย ซึ่งจะควบคุมว่าสามารถส่งคำขอซื้อได้หรือไม่ เมื่อแอปได้รับอนุญาตให้ขอความสามารถระดับพรีเมียม และระยะเวลาที่เฟรมเวิร์ก Telephony รอการตอบกลับจากผู้ใช้หรือเครือข่าย
ฟีเจอร์การขายอัปเซลล์การแบ่งส่วนเครือข่าย 5G มีอินเทอร์เฟซที่เรียกว่า
DataBoostWebServiceFlow
เพื่อให้ Android และ WebView ของผู้ให้บริการสื่อสารกันได้
รูปที่ 2 แสดงขั้นตอนการซื้อการอัปเซลล์การแบ่งส่วนเครือข่าย 5G
รูปที่ 2 ขั้นตอนการซื้อการอัปเซลล์การแบ่งส่วนเครือข่าย 5G
กระบวนการให้สิทธิ์ TS.43
เมื่อผู้ใช้ส่งคำขอความสามารถของเครือข่ายที่ได้รับการปรับปรุง เฟรมเวิร์ก Telephony จะขอการกำหนดค่าสิทธิ์ของบริการสำหรับความสามารถระดับพรีเมียมที่ขอ หากการตอบกลับ TS.43 ใช้ได้ เฟรมเวิร์ก Telephony จะใช้ฟิลด์จากการตอบกลับ HTTP เพื่อขับเคลื่อนคำขออนุมัติการซื้อ
ฟิลด์การซื้อแบบแบ่ง
การกำหนดค่าการให้สิทธิ์ TS.43 มีฟิลด์การซื้อสไลซ์ต่อไปนี้
- สถานะการให้สิทธิ์
แป้น:
EntitlementStatusประเภท:
intค่าที่รองรับ:
0(ปิดใช้),1(เปิดใช้),2(ใช้ร่วมกันไม่ได้),3(การจัดสรร),4(รวมอยู่)- สถานะการจัดสรร
แป้น:
ProvStatusประเภท:
intค่าที่รองรับ:
0(ไม่ได้จัดสรร),1(จัดสรรแล้ว),2(ไม่พร้อมใช้งาน),3(กำลังดำเนินการ)
เฟรมเวิร์ก Telephony ใช้สถานะการให้สิทธิ์และสถานะการจัดสรรร่วมกันเพื่อกำหนดสถานะการซื้อสไลซ์ปัจจุบัน ผลลัพธ์ อาจเป็นอย่างใดอย่างหนึ่งต่อไปนี้
PURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_PURCHASEDPURCHASE_PREMIUM_CAPABILITY_RESULT_ALREADY_IN_PROGRESSPURCHASE_PREMIUM_CAPABILITY_RESULT_ENTITLEMENT_CHECK_FAILEDPURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_ERROR
หากสถานะการให้สิทธิ์เป็น 1 (เปิดใช้) และสถานะการจัดสรรเป็น 0
(ไม่ได้จัดสรร) เฟรมเวิร์กโทรศัพท์จะแสดงการแจ้งเตือนการอัปเซลล์แก่
ผู้ใช้เพื่อซื้อการเพิ่มผ่าน WebView ของผู้ให้บริการ ตารางต่อไปนี้
อธิบายลักษณะการทำงานของเฟรมเวิร์ก Telephony สำหรับค่าสถานะการจัดสรรและการให้สิทธิ์
ชุดค่าผสมต่างๆ
| สถานะการจัดสรร | |||||
|---|---|---|---|---|---|
ไม่ได้จัดสรร (0) |
จัดสรร (1) |
ไม่พร้อมใช้งาน (2) |
กำลังดำเนินการ (3) |
||
| สถานะการให้สิทธิ์ | ปิดใช้ (0) |
ล้มเหลว | ล้มเหลว | ล้มเหลว | ล้มเหลว |
เปิดใช้ (1) |
แสดง WebView | ซื้อแล้ว | ซื้อแล้ว | กำลังดำเนินการ | |
ไม่รองรับ (2) |
ล้มเหลว | ล้มเหลว | ล้มเหลว | ล้มเหลว | |
การจัดสรร (3) |
ข้อผิดพลาดของผู้ให้บริการ | ข้อผิดพลาดของผู้ให้บริการ | กำลังดำเนินการ | กำลังดำเนินการ | |
รวม (4) |
ข้อผิดพลาดของผู้ให้บริการ | ซื้อแล้ว | ซื้อแล้ว | ข้อผิดพลาดของผู้ให้บริการ | |
ฟิลด์โฟลว์บริการ
การตอบกลับ TS.43 จะระบุ URL, ข้อมูลผู้ใช้ และประเภทเนื้อหาเพื่อปรับแต่ง
ลักษณะการทำงานของ WebView การซื้อของผู้ให้บริการ หากไม่ได้ระบุประเภทเนื้อหา ระบบจะโหลด URL เป็นคำขอ GET หากมีข้อมูลผู้ใช้ ระบบจะต่อท้ายข้อมูลดังกล่าวใน
URL เป็นพารามิเตอร์การค้นหา (เช่น
https://www.android.com?encodedValue=Base64EncodedUserData) และหากไม่มี
ข้อมูล ระบบจะใช้ URL ตามเดิม (เช่น https://www.android.com)
หากระบุประเภทเนื้อหาในรูปแบบ JSON หรือ XML ระบบจะโหลด URL เป็นคำขอ
POST และส่งข้อมูลผู้ใช้ (ถอดรหัสหากมีการเข้ารหัสใน Base 64) เป็น
ข้อมูลสำหรับคำขอ POST
- URL
แป้น:
ServiceFlow_URLประเภท:
Stringตัวอย่าง:
"https://www.android.com"- ข้อมูลผู้ใช้
แป้น:
ServiceFlow_UserDataประเภท:
Stringตัวอย่าง:
"encodedValue=Base64EncodedUserData"- ประเภทเนื้อหา
แป้น:
ServiceFlow_ContentsTypeประเภท:
Stringค่าที่รองรับ:
0(ไม่ระบุ),1(JSON),2(XML)
การกำหนดค่าผู้ให้บริการ
การกำหนดค่าของผู้ให้บริการต่อไปนี้พร้อมให้ปรับแต่ง ลักษณะการทำงานของฟีเจอร์การขายเพิ่มสำหรับ Network Slicing 5G
KEY_SUPPORTED_PREMIUM_CAPABILITIES_INT_ARRAYรายการความสามารถระดับพรีเมียมที่รองรับ นี่คืออาร์เรย์ int ของ
TelephonyManager.PremiumCapabilityความสามารถระดับพรีเมียมเหล่านี้มีค่าเท่ากับคลาสNetworkCapabilities.NetCapabilityที่เกี่ยวข้อง หากมีการขอความสามารถระดับพรีเมียมและไม่ได้รวมไว้ในการกำหนดค่านี้ คำขออนุมัติการซื้อจะล้มเหลวพร้อมผลลัพธ์CARRIER_DISABLEDใน Android 14 รองรับเฉพาะ
PREMIUM_CAPABILITY_PRIORITIZE_LATENCYKEY_PREMIUM_CAPABILITY_MAXIMUM_DAILY_NOTIFICATION_COUNT_INTจำนวนครั้งสูงสุดต่อวันที่ระบบแสดงการแจ้งเตือนการขายอัปเซลล์การซื้อต่อผู้ใช้ หากถึงขีดจำกัดสูงสุดรายวันแล้ว ระบบจะไม่แสดงการแจ้งเตือนให้อัปเซล และจะจำกัดอัตราคำขอซื้อ (รวมถึงคำขอเซิร์ฟเวอร์การให้สิทธิ์) จนถึง เที่ยงคืนของวันถัดไป คำขอซื้อที่ส่งหลังจากถึงขีดจำกัดสูงสุดต่อวันจะล้มเหลวและแสดงผลลัพธ์เป็น
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLEDKEY_PREMIUM_CAPABILITY_MAXIMUM_MONTHLY_NOTIFICATION_COUNT_INTจำนวนครั้งสูงสุดต่อเดือนที่การแจ้งเตือนให้อัปเซลล์การซื้อจะแสดงต่อผู้ใช้ หากถึงขีดจำกัดรายเดือนแล้ว ระบบจะไม่แสดงการแจ้งเตือนให้อัปเซล และจะจำกัดคำขอซื้อ (รวมถึงคำขอเซิร์ฟเวอร์การให้สิทธิ์) จนถึงวันที่ 1 ของเดือนถัดไป คำขอซื้อที่ส่งหลังจากถึง ขีดจำกัดรายเดือนจะล้มเหลวพร้อมผลลัพธ์
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLEDKEY_PREMIUM_CAPABILITY_PURCHASE_URL_STRINGURL การซื้อของผู้ให้บริการสำรองที่จะแสดงต่อผู้ใช้เมื่อคลิก การแจ้งเตือนการขายอัปเซล หากไม่พบ URL การซื้อในการตอบกลับ TS.43 จากเซิร์ฟเวอร์การให้สิทธิ์ ระบบจะใช้ค่านี้แทน หากทั้ง URL จากการตอบกลับ TS.43 และการกำหนดค่าของผู้ให้บริการไม่ถูกต้อง คำขออนุมัติการซื้อจะล้มเหลวพร้อมผลลัพธ์
PURCHASE_PREMIUM_CAPABILITY_RESULT_CARRIER_DISABLEDKEY_PREMIUM_CAPABILITY_SUPPORTED_ON_LTE_BOOLว่าจะอนุญาตให้ซื้อความสามารถระดับพรีเมียมเมื่ออุปกรณ์ เชื่อมต่อกับ Long-Term Evolution (LTE) หรือไม่ หาก
trueคุณจะส่งคำขอซื้อได้ทั้งใน LTE และ New Radio (NR) หากfalseคำขอซื้อจะทำได้เฉพาะใน NR และคำขอที่ทำใน LTE จะล้มเหลว โดยมีผลลัพธ์เป็นPURCHASE_PREMIUM_CAPABILITY_RESULT_NETWORK_NOT_AVAILABLEKEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONGระยะเวลาที่จะแสดงการแจ้งเตือนให้อัปเซลล์การซื้อต่อผู้ใช้ก่อนที่ระบบจะยกเลิกโดยอัตโนมัติ เมื่อยกเลิกการแจ้งเตือน ระบบจะจำกัดอัตราคำขอที่ตามมาและคำขอจะล้มเหลวพร้อมผลลัพธ์
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLEDKEY_PREMIUM_CAPABILITY_NOTIFICATION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONGระยะเวลาที่ควรจำกัดอัตราคำขอซื้อครั้งต่อๆ ไปหลังจาก เกิดข้อผิดพลาดเนื่องจากหมดเวลาหรือผู้ใช้ยกเลิก หากผู้ใช้ไม่คลิก การแจ้งเตือนให้อัปเซลล์การซื้อภายในระยะหมดเวลาที่ระบุโดย
KEY_PREMIUM_CAPABILITY_NOTIFICATION_DISPLAY_TIMEOUT_MILLIS_LONGหรือหากผู้ใช้ยกเลิกหรือปิดการแจ้งเตือน ตัวจับเวลาการหยุดชั่วคราวนี้จะเริ่มทำงาน ขณะที่ตัวจับเวลานี้ทำงานอยู่ คำขอซื้อจะล้มเหลวพร้อมผลลัพธ์PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLEDKEY_PREMIUM_CAPABILITY_PURCHASE_CONDITION_BACKOFF_HYSTERESIS_TIME_MILLIS_LONGระยะเวลาที่ควรจำกัดคำขอซื้อครั้งต่อๆ ไปหลังจาก การดำเนินการไม่สำเร็จเนื่องจากผู้ให้บริการหรือเครือข่าย หากการตรวจสอบการให้สิทธิ์ไม่สำเร็จ URL ไม่พร้อมใช้งาน หรือ URL การซื้อของผู้ให้บริการระบุว่าไม่สำเร็จ ตัวจับเวลา การถอยนี้จะเริ่มทำงาน ขณะที่ตัวจับเวลานี้ทำงาน คำขอซื้อจะล้มเหลวโดยมีผลลัพธ์เป็น
PURCHASE_PREMIUM_CAPABILITY_RESULT_THROTTLEDKEY_PREMIUM_CAPABILITY_NETWORK_SETUP_TIME_MILLIS_LONGระยะเวลาที่เครือข่ายต้องตั้งค่าการแบ่งส่วน เพื่อซื้อความสามารถระดับพรีเมียม ในช่วงนี้ ระบบจะบล็อกคำขออนุมัติการซื้อที่ตามมาและแสดงผลลัพธ์เป็น
PURCHASE_PREMIUM_CAPABILITY_RESULT_PENDING_NETWORK_SETUPหากเครือข่ายตั้งค่าการกำหนดค่าการแบ่งส่วนไม่ทันเวลา แอปจะ ขอซื้อความสามารถระดับพรีเมียมอีกครั้งได้ โทรศัพท์จะไม่ถือว่าการซื้อเสร็จสมบูรณ์จนกว่าจะมีการส่งการกำหนดค่าการแบ่งส่วนที่เกี่ยวข้อง ไม่ว่าผู้ใช้จะชำระเงินให้ผู้ให้บริการหรือไม่ก็ตาม
อินเทอร์เฟซ JavaScript
เมื่อผู้ใช้คลิกการแจ้งเตือนการเพิ่มเครือข่าย ระบบจะแสดงออบเจ็กต์ WebView พร้อม
URL การซื้อของผู้ให้บริการแก่ผู้ใช้ ผู้ให้บริการสามารถใช้ API
ที่ระบุไว้ใน
DataBoostWebServiceFlow
อินเทอร์เฟซ JavaScript ในเว็บไซต์การซื้อเพื่อสื่อสารกับแอปการซื้อแพ็กเกจ
เว็บไซต์ของผู้ให้บริการสามารถรับความสามารถระดับพรีเมียมที่ขอได้ผ่านเมธอด
getRequestedCapability()
หากซื้อสำเร็จ เว็บไซต์ของผู้ให้บริการต้องแจ้งให้แอปซื้อแพ็กเกจ
ทราบผ่าน notifyPurchaseSuccessful() หรือ
notifyPurchaseSuccessful(duration) โดย duration เป็นพารามิเตอร์ที่ไม่บังคับ
ซึ่งระบุระยะเวลาที่ต้องการของแพ็กเกจ
หากการซื้อไม่สำเร็จ เว็บไซต์ของผู้ให้บริการต้องแจ้งให้แอปซื้อสไลซ์ทราบผ่านเมธอด notifyPurchaseFailed(code, reason) โดยที่ code คือรหัสความล้มเหลวที่ระบุสาเหตุของความล้มเหลว และ reason คือสาเหตุของความล้มเหลวที่มนุษย์อ่านได้หากไม่ทราบรหัสความล้มเหลว
หากไม่ได้เรียกใช้เมธอดการตอบกลับเหล่านี้ ระบบจะไม่ถือว่าการซื้อเสร็จสมบูรณ์และคำขออนุมัติการซื้อจะหมดเวลาในที่สุด
รหัสความล้มเหลวที่ถูกต้องซึ่งเว็บไซต์ของผู้ให้บริการขนส่งสามารถแสดงได้ เมื่อการซื้อไม่สำเร็จมีดังนี้
FAILURE_CODE_UNKNOWNFAILURE_CODE_CARRIER_URL_UNAVAILABLEFAILURE_CODE_AUTHENTICATION_FAILEDFAILURE_CODE_PAYMENT_FAILEDFAILURE_CODE_NO_USER_DATA
เมื่อการซื้อเสร็จสมบูรณ์ ผู้ให้บริการต้องอัปเดตกฎ URSP
ด้วยสไลซ์ PRIORITIZE_LATENCY ไปยังอุปกรณ์ของผู้ใช้
การกำหนดเส้นทางอัตโนมัติของการแบ่งส่วนเครือข่าย 5G สำหรับเสียงและวิดีโอ OTT
Android 17 รองรับการกำหนดเส้นทางอัตโนมัติของ การโทรด้วยเสียงและวิดีโอผ่านอินเทอร์เน็ต (OTT) ไปยังการเชื่อมต่อเครือข่ายระดับพรีเมียม ฟีเจอร์นี้ช่วยให้ระบบนำการรับส่งข้อมูลจากการโทรด้วยเสียงและวิดีโอไปยังอินเทอร์เฟซเครือข่ายพรีเมียมเฉพาะ (เช่น สไลซ์ 5G พรีเมียมหรือการเชื่อมต่อ PDN 4G พรีเมียม) ได้โดยอัตโนมัติโดยไม่ต้องทำการเปลี่ยนแปลงสแต็กเครือข่ายของแอป
โซลูชันระดับแพลตฟอร์มนี้ช่วยให้นักพัฒนาแอปไม่ต้องขอความสามารถของเครือข่ายอย่างชัดเจน ซึ่งจะมอบประสบการณ์การใช้งานที่ราบรื่นทั้งสำหรับนักพัฒนาแอปและผู้ใช้ปลายทาง
วิธีการทำงาน
Android รองรับการกำหนดเส้นทางอัตโนมัติผ่านการเพิ่มลงใน เฟรมเวิร์กการเชื่อมต่อและโทรคมนาคม ฟีเจอร์การกำหนดเส้นทางอัตโนมัติทำงานดังนี้
- การตรวจจับการโทร: ระบบจะใช้ประโยชน์จาก Telecom Jetpack API ที่มีอยู่ซึ่งแอป OTT ใช้เพื่อตรวจจับการเริ่มต้นและการสิ้นสุดของการโทรด้วยเสียงหรือวิดีโอ
- การจัดการการเชื่อมต่อ: เมื่อตรวจพบการโทร Android จะแสดง อินเทอร์เฟซเครือข่ายพรีเมียมที่กำหนด เช่น สไลซ์การสื่อสารแบบรวม
- การกำหนดเส้นทางการรับส่งข้อมูล: ระหว่างการโทร แพลตฟอร์มจะระบุ แอปพลิเคชันตาม UID และกำหนดเส้นทางการรับส่งข้อมูลไปยังการเชื่อมต่อเครือข่าย พรีเมียมโดยอัตโนมัติ
- การสำรองข้อมูลหลังการโทร: เมื่อการโทรสิ้นสุดลง แพลตฟอร์มจะนำกฎการกำหนดเส้นทางออก และการรับส่งข้อมูลของแอปจะกลับไปที่เครือข่ายเริ่มต้นของระบบ สำหรับการรับส่งข้อมูลที่ไม่ใช่การโทร (เช่น การรับส่งข้อความ)
ข้อกำหนด
คุณต้องมีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้จึงจะรองรับการกำหนดเส้นทางอัตโนมัติสำหรับการโทรผ่าน OTT ได้
- ผู้ให้บริการ: ต้องเสนอการแบ่งส่วนการสื่อสารแบบรวมโดยการกำหนดค่า กฎ URSP ที่เหมาะสม (ใช้ความสามารถในการเชื่อมต่อหรือ OSAppId สำหรับการรับส่งข้อมูลการสื่อสารแบบรวม)
- แอป: ต้องใช้ Android Telecom Jetpack API เพื่ออนุญาตให้ระบบตรวจหาระดับการโทร
- ผู้ผลิตอุปกรณ์: ต้องใช้ Android 17 ขึ้นไป