Activity

package wifi3.com;import java.util.List;import android.app.Activity;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.content.IntentFilter;import android.net.wifi.ScanResult;import android.net.wifi.WifiManager;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.TextView;public class Wifi3Activity extends Activity {    /** Called when the activity is first created. */private TextView wifiText;      private WifiManager wifiManager;      private StringBuilder sb;      private List<ScanResult> wifiList;      private WifiReceiver wifiReceiver;         @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                sb = new StringBuilder();          wifiText = (TextView) findViewById(R.id.wifi);          wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);          wifiReceiver = new WifiReceiver();          registerReceiver(wifiReceiver, new IntentFilter(                  WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));          wifiManager.startScan();          wifiText.setText("\nStarting Scan\n");                    }        @Override      public boolean onCreateOptionsMenu(Menu menu) {          menu.add(0, 0, 0, "Refresh");          return super.onCreateOptionsMenu(menu);      }        @Override      public boolean onMenuItemSelected(int featureId, MenuItem item) {          wifiManager.startScan();          wifiText.setText("Starting Scan");          return super.onMenuItemSelected(featureId, item);        }        @Override      protected void onPause() {          unregisterReceiver(wifiReceiver);          super.onPause();      }            @Override      protected void onResume() {          registerReceiver(wifiReceiver, new IntentFilter(                  WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));          super.onResume();      }            private final class WifiReceiver extends BroadcastReceiver {          @Override          public void onReceive(Context context, Intent intent) {              sb = new StringBuilder();              wifiList = wifiManager.getScanResults();              for (int i = 0; i < wifiList.size(); i++) {                  sb.append(new Integer(i + 1).toString() + ".");                  sb.append((wifiList.get(i)).toString()).append("\n\n");              }              wifiText.setText(sb.toString());          }      }         }

布局文件

<?xml version="1.0" encoding="utf-8"?><ScrollView xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"><LinearLayout     android:orientation="vertical"      android:layout_width="fill_parent"      android:layout_height="fill_parent"      >  <TextView       android:id="@+id/wifi"      android:layout_width="fill_parent"       android:layout_height="wrap_content"       android:text="@string/hello"      />  </LinearLayout></ScrollView>

Manifest

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="wifi3.com"    android:versionCode="1"    android:versionName="1.0" >    <uses-sdk android:minSdkVersion="8" />    <application        android:icon="@drawable/ic_launcher"        android:label="@string/app_name" >        <activity            android:name=".Wifi3Activity"            android:label="@string/app_name" >            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>    </application><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>   <uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"></uses-permission>     <uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>     <uses-permission android:name="android.permission.INTERNET"></uses-permission>     <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>     <uses-permission android:name="android.permission.MODIFY_PHONE_STATE"></uses-permission> </manifest>

其中 信号强度 调用 level 参数

< 70 强

< 80 较强

< 90 较弱

<100 弱

更多相关文章

  1. Android-线性布局的经典案例1-计算器
  2. Android简易计算器——LinearLayout布局
  3. android 使用代码实现 RelativeLayout布局
  4. Android从零撸美团(四) - 美团首页布局解析及实现 - Banner+自定
  5. 源码解析Android中View的layout布局过程
  6. 用android LinearLayout和RelativeLayout实现精确布局
  7. Android中微信主界面菜单栏的布局实现代码
  8. 为了获取下一个10亿用户,Google的布局其实不仅仅是Android Go

随机推荐

  1. Enumerable 下又有新的扩展方法啦,快来一
  2. 遍历 Dictionary,你会几种方式?
  3. 内存不够用还要速度快,终于找到可以基于 F
  4. 用过 mongodb 吧, 这三个大坑踩过吗?
  5. await,async 我要把它翻个底朝天,这回你总
  6. 如何让多端口网站用一个nginx进行反向代
  7. 快醒醒,C# 9 中又来了一堆关键词 init,rec
  8. 如何校验内存数据的一致性,DynamicExpress
  9. 数据结构与算法专题——第十一题 Treap树
  10. 终于弄明白了 Singleton,Transient,Scope