朋友您好我正在制作一个项目,我正在努力获得我能够获得的无线网络,但显示网络需要花费很多时间。有没有办法很快得到它?
在xml文件中......
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="55dp"
android:layout_marginTop="57dp"
android:text="TextView" />
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="44dp" >
</ListView>
</RelativeLayout>
在活动类
中public class MainActivity extends Activity {
WifiManager mainWifiObj;
WifiScanReceiver wifiReciever;
ListView list;
String wifis[];
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
list = (ListView) findViewById(R.id.listView1);
mainWifiObj = (WifiManager) getSystemService(Context.WIFI_SERVICE);
wifiReciever = new WifiScanReceiver();
//mainWifiObj.startScan();
}
protected void onPause() {
unregisterReceiver(wifiReciever);
super.onPause();
}
protected void onResume() {
registerReceiver(wifiReciever, new IntentFilter(
WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
super.onResume();
}
class WifiScanReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context arg0, Intent arg1) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), "in receiver", Toast.LENGTH_SHORT).show();
List<ScanResult> wifiScanList = mainWifiObj.getScanResults();
wifis = new String[wifiScanList.size()];
for (int i = 0; i < wifiScanList.size(); i++) {
wifis[i] = ((wifiScanList.get(i)).toString());
}
list.setBackgroundColor(Color.BLUE);
list.setAdapter(new ArrayAdapter<String>(getApplicationContext(),
android.R.layout.simple_list_item_1, wifis));
}
}
}
在清单文件中......
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
logcat是......
04-11 11:30:42.248: E/Trace(12823): error opening trace file: No such file or directory (2)
04-11 11:30:42.248: D/ActivityThread(12823): setTargetHeapUtilization:0.25
04-11 11:30:42.248: D/ActivityThread(12823): setTargetHeapIdealFree:8388608
04-11 11:30:42.248: D/ActivityThread(12823): setTargetHeapConcurrentStart:2097152
04-11 11:30:42.539: I/Adreno200-EGL(12823): <qeglDrvAPI_eglInitialize:269>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_JB_2.3.04.01.01.032.173_msm8960_JB_2.2_RB2.3_CL3273343_release_AU (CL3273343)
04-11 11:30:42.539: I/Adreno200-EGL(12823): Build Date: 04/22/13 Mon
04-11 11:30:42.539: I/Adreno200-EGL(12823): Local Branch:
04-11 11:30:42.539: I/Adreno200-EGL(12823): Remote Branch: m/jb_2.2_rb2.3
04-11 11:30:42.539: I/Adreno200-EGL(12823): Local Patches: NONE
04-11 11:30:42.539: I/Adreno200-EGL(12823): Reconstruct Branch: AU_LINUX_ANDROID_JB_2.3.04.01.01.032.173 + NOTHING