APP無法取得手機所連接Wi-Fi的SSID


最近修Bug時,遇到了取得的SSID值是 <unknown ssid=""> 的狀況,確認過使用者的定位授權(android.permission.ACCESS_FINE_LOCATION),也都有正常開啟,一開始以為是特定機種的問題,但後來其他測試機也有類似的狀況,找了下資料,才知道真正的原因。

上述取得SSID的程式碼如下:


在Android 8.1 (API 27)(含)以上版本,APP只擁有使用者的定位權限是不夠的,還需要手機的GPS功能也同時打開才行。

目前看到的結論是,暫時沒有其他的方法可以繞過,一定要上面兩個條件同時滿足,才能拿到正確的SSID。

另外也有文章提到,在理論上就算只有Wi-Fi資訊 (SSID名稱),還是有機會確認出使用者目前的所在位置,所以在保護使用者隱私的原則下,要使用者同意此時可以被定位 (開啟GPS功能),APP才能取得有關使用者位置的資訊,也是相對合理的做法。



資料參考來源:
https://stackoverflow.com/questions/21391395/get-ssid-when-wifi-is-connected
https://www.davx5.com/faq/wifi-ssid-restriction-location-permission

留言

這個網誌中的熱門文章

Privacy Policy - Games Database - MHW

Privacy Policy - QR Code Scanner

Privacy Policy - Hey Note - notepad & memo