import android.net.wifi.WifiManager; //导入方法依赖的package包/类
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Get the stored sort order
SharedPreferences prefs = PreferenceManager
.getDefaultSharedPreferences(this);
int sortOrderOrdinal = prefs.getInt(PREF_WIFI_SORT_ORDER, SortOrder
.NONE.ordinal());
if (sortOrderOrdinal >= 0 && sortOrderOrdinal < SortOrder.values()
.length) {
sortOrder = SortOrder.values()[sortOrderOrdinal];
}
// Make a BroadcastReceiver to get the scan results
mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final WifiManager wifi = (WifiManager) getSystemService
(Context.WIFI_SERVICE);
int state = wifi.getWifiState();
if (state != WifiManager.WIFI_STATE_ENABLED) {
Utils.errMsg(WifiActivity.this, "WiFi is not enabled");
return;
}
List scanResults = wifi.getScanResults();
// Make the ArrayList
mNetworks = new ArrayList(scanResults.size());
for (ScanResult scanResult : scanResults) {
mNetworks.add(new WifiNetwork(scanResult));
}
// Sort the arrays list
Collections.sort(mNetworks);
// Set the adapter
mNetworkListdapter = new NetworkListAdapter();
setListAdapter(mNetworkListdapter);
}
};
registerReceiver(mReceiver, new IntentFilter(
WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
// Call refresh to set the contents
refresh();
}