วันศุกร์ที่ 22 มีนาคม พ.ศ. 2562

ข้อจำกัดเรื่อง WiFi ของ Android 9 (หรือเวอร์ชั่นที่ใหม่กว่า)

    เนื่องจากในขณะที่กำลังทดสอบการตรวจจับข้อมูลสัญญาณ WiFi พบว่ามือถือของผมนั้น (Xiaomi Mi A1, Android 9) มีการอัพเดทข้อมูลเพียงเล็กน้อยแล้วนิ่งไปสักพักจึงจะมีการอัพเดทข้อมูลอีกครั้ง ส่วนมือถือของธนัท (Asus Zenfone Max Pro M2, Android 8.1) กลับอัพเดทข้อมูลได้เรื่อยๆไม่มีปัญหาอะไร ผมจึงได้ทำการหาข้อมูลว่าปัญหาเกิดจากอะไร จนพบว่า


    ฟังก์ชั่น startScan() ซึ่งใช้สำหรับ trigger ให้อุปกรณ์ทำการ Scan WiFi เพื่ออัพเดทข้อมูล ถูกเลิกใช้ตั้งแต่ API level 28 (Android 9) ขึ้นไป และมีการจำกัดจำนวนครั้งการสแกน โดยจะสามารถสแกนได้ 4 ครั้งใน 2 นาทีสำหรับ Foreground Application และ 1 ครั้งใน 30 นาที สำหรับ Background Application

    ซึ่งการยกเลิกฟังก์ชั่นดังกล่าวทำให้ Developer ที่ทำ Application ที่เกี่ยวกับ indoor maps และ wifi analyzer พบกับปัญหากัน ซึ่งทางออกที่ Google แนะนำคือให้ใช้ WifiRttManager แทน แต่ก็มีข้อจำกัดคือ อุปกรณ์ทั้งมือถือ และ Access Point จะต้องรองรับมาตรฐาน wifi IEEE 802.11mc ซึ่งอุปกรณ์ที่รองรับตอนนี้ยังมีไม่มากนัก


แนวทางการแก้ปัญหา

    อาจจะต้องจำกัดให้สามารถใช้ได้แค่ Android 8.1 ลง



แหล่งอ้างอิง

ไม่มีความคิดเห็น:

แสดงความคิดเห็น