![](/img/trans.png)
[英]How to detect if a network is (configured as) a mobile hotspot on Android?
[英]How to detect mobile hotspot feature availability in Android programmatically?
我希望標題本身說明我的問題是什么......
例如,我們可以使用PackageManager檢查Wifi的可用性
packageManager.hasSystemFeature(PackageManager.FEATURE_WIFI);
同樣有沒有辦法以編程方式檢測Android中的移動熱點功能可用性?
謝謝。
我通過谷歌文檔,發現如果設備支持wifi P2P,那么顯然它支持wifi熱點
通過設備檢查Wi-Fi Direct / wifi P2P,然后檢查這種方式
PackageManager m = getPackageManager();
if (!m.hasSystemFeature(PackageManager.FEATURE_WIFI_DIRECT)) {
// This device does support wifi P2P
}
但谷歌表示最好以這種方式檢查你的廣播接收器本身的支持
@Override
public void onReceive(Context context, Intent intent) {
...
String action = intent.getAction();
if (WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION.equals(action)) {
int state = intent.getIntExtra(WifiP2pManager.EXTRA_WIFI_STATE, -1);
if (state == WifiP2pManager.WIFI_P2P_STATE_ENABLED) {
// Wifi P2P is enabled
} else {
// Wi-Fi P2P is not enabled
}
}
...
}
檢查谷歌文檔相同
這可能是解決方案的第一步。
請參閱: Android Wifi熱點管理器類
您可以通過調用此方法來檢查: ConnectivityManager.isActiveNetworkMetered()
這將返回Wifi Hotspot中的當前活動連接。
我覺得它對你有點幫助。
您可以通過調用ConnectivityManager.isActiveNetworkMetered()
來訪問此信息。
這將返回活動連接是否為熱點(如數據使用 - >移動熱點中所定義)。
這是一個類似問題的好答案! 如何檢測網絡是否(配置為)Android上的移動熱點?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.