2014-11-04 35 views

回答

3

您可以使用ConnectivityManagerCompat.isActiveNetworkMetered(),從支持庫。查詢this answer瞭解更多信息。

它將返回true用於移動數據連接和與移動AP對應的wifi網絡。

+0

這很難說是通用的解決方案 - 它僅出現如果熱點「發送具有ANDROID_METERED值DHCP選項43(供應商特定的選項)」,這將主要是用於*電話充當熱點的情況下*工作,但大概不是一個獨立的熱點設備。 – 2014-11-04 18:43:54

+0

@ChrisStratton是的,或多或少。只要在Android的「移動熱點」偏好設置中標記網絡,它就會返回true。雖然Android熱點會自動標記,但用戶可以根據需要切換此選項。 – matiash 2014-11-04 18:46:10

0

一個其他潛在的選擇是建立到遠程端點的呼叫,如網絡服務器,確定外部IP地址,然後查找,以查看是否該IP地址是在一系列已知的蜂窩載體子網。這可能是我能想到的最高精度解決方案,但當然需要更多的基礎設施才能工作。

相關問題