判斷Android的WIFI與GPS狀態,並引導用戶前去開啓GPS與WIFI設置
需要配置權限
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
判斷Android的WIFI與GPS狀態
private void checkWifiAndGpsStatus() {
boolean result = true;
/* 取得WifiManager與LocationManager */
WifiManager wManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
LocationManager lManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
/* 確認WiFi服務是關閉且不在開啓運行中 */
if (!wManager.isWifiEnabled()
&& wManager.getWifiState() != WifiManager.WIFI_STATE_ENABLING) {
tv01.setText("Wifi狀態:未啓動");
result = false;
} else {
tv01.setText("Wifi狀態:已啓動");
}
/* 確認GPS是否開啓 */
if (!lManager.isProviderEnabled(LocationManager.GPS_PROVIDER)
|| !lManager
.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
tv02.setText("GPS狀態:未啓動");
result = false;
} else {
tv02.setText("GPS狀態:已啓動");
}
if (result) {
mButton03.setEnabled(true);
} else {
mButton03.setEnabled(false);
}
}
跳轉至Wifi設置畫面
Intent intent = new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS);
startActivityForResult(intent, 0);
跳轉至GPS設置界面
Intent intent = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivityForResult(intent, 0);