編輯:關於Android編程
在實際開發中我們會經常需要獲取周圍WiFi熱點,最近做了這個demo,寫出來和大家一起分享一下吧。大體思路呢是這樣的,首先WifiManger獲取WiFi服務,然後將結果儲存在ArrayList<ScanResult>中,好了,具體內容大家可以直接看代碼:
MainActivity.java:
public class MainActivity extends AppCompatActivity { ArrayList<ScanResult> list; //存放周圍wifi熱點對象的列表 WifiManager wifiManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); //獲得系統wifi服務 list = (ArrayList<ScanResult>)wifiManager.getScanResults(); sortByLevel(list); init(); } private void init(){ TextView tv1=(TextView)findViewById(R.id.tv1); TextView tv2=(TextView)findViewById(R.id.tv2); TextView tv3=(TextView)findViewById(R.id.tv3); if (list.get(0).SSID != null && list.get(1).SSID != null){ tv1.setText("信號最強為"+list.get(0).SSID); tv2.setText("信號第二位:"+list.get(1).SSID); tv3.setText("共有"+list.size()+"個wifi"); } } //將搜索到的wifi根據信號強度從強到弱進行排序 private void sortByLevel(ArrayList<ScanResult> list) { for(int i=0;i<list.size();i++) for(int j=1;j<list.size();j++) { if(list.get(i).level<list.get(j).level) //level屬性即為強度 { ScanResult temp = null; temp = list.get(i); list.set(i, list.get(j)); list.set(j, temp); } } } }
布局文件activity_main.xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/tv1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" /> <TextView android:id="@+id/tv2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" /> <TextView android:id="@+id/tv3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" /> </LinearLayout>
OK,就是這個樣子吧。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持本站。
首先我們要先了解關於View在3.0之後引入的幾個新的屬性,並設置了其getter和setter方法: 1)translationX 和 translati
1 前言經過一周的奮戰,終於從谷歌官網上下載最新的android 6.0.1_r62源碼,編譯成功,並成功的刷入nexus6p,接著root完畢,現寫下這篇博客記錄一下實
qq群簽到有什麼用?手機qq群怎麼簽到?下面就讓小編來教教你吧!qq群簽到應用介紹:連續15天簽到,可以獲得群空間橙名的特權;連續30天簽到,可以獲得會員試
AsyncTask 資料上寫是android提供的輕量級的異步類 可以直接繼承AsyncTask 在類中實現異步操作 並提供接口反饋當