2011-07-13 08:42

1、首先新建了布局模板XML文件vifi.xml,代码很简单,如下:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

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>

2、写java代码,新建个Activity,代码如下:

package com.eoeandroid.demo.testcode;


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 WifiTester extends Activity {

TextView mainText;

WifiManager mainWifi;

WifiReceiver receiverWifi;

List<ScanResult> wifiList;

StringBuilder sb = new StringBuilder();


public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.vifi);

setTitle("eoe教程: Wifi Test. -by:IceskYsl");

mainText = (TextView) findViewById(R.id.wifi);

mainWifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);


receiverWifi = new WifiReceiver();

registerReceiver(receiverWifi, new IntentFilter(

WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));

mainWifi.startScan();

mainText.setText("\nStarting Scan...\n");

}


public boolean onCreateOptionsMenu(Menu menu) {

menu.add(0, 0, 0, "Refresh");

return super.onCreateOptionsMenu(menu);

}


public boolean onMenuItemSelected(int featureId, MenuItem item) {

mainWifi.startScan();

mainText.setText("Starting Scan");

return super.onMenuItemSelected(featureId, item);

}


protected void onPause() {

unregisterReceiver(receiverWifi);

super.onPause();

}


protected void onResume() {

registerReceiver(receiverWifi, new IntentFilter(

WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));

super.onResume();

}


class WifiReceiver extends BroadcastReceiver {


public void onReceive(Context c, Intent intent) {

sb = new StringBuilder();

wifiList = mainWifi.getScanResults();

for (int i = 0; i < wifiList.size(); i++) {

sb.append(new Integer(i + 1).toString() + ".");

sb.append((wifiList.get(i)).toString());

sb.append("\n\n");

}

mainText.setText(sb);

}

}

}

3、申请相关权限,代码如下:

<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>

4、OK,就这些,允允许下,效果看附件图片,我扫描到我这有2个热点。

更多相关文章

  1. Android(安卓)代码设置Color的几种方式
  2. android单元测试用例和日志输出
  3. Android: How to Capture Screen in Gingerbread(2.3中实现截屏)
  4. android中判断网络和WIFI是否连接
  5. Ubuntu 13.04 编译环境配置及android 2.3 源代码编译时出现了以
  6. android studio 格式化代码时注解不换行
  7. android监控来电显示
  8. Android点击2次返回按钮退出应用程序
  9. 如何使Android应用开机时自动启动

随机推荐

  1. 关于设置android:imeOptions属性无效的解
  2. Button的背景透明度或者颜色的设置
  3. Android(安卓)APP漏洞挖掘
  4. 安卓学习- 编写界面(页面布局详解)
  5. android TextView的字体颜色设置的多种方
  6. Android——使用InputManager实现模拟滚
  7. android:scaleType centerCrop和centerIn
  8. 解决某些手机RadioGroup中的RadioButton
  9. Android(安卓)基于libaums实现读写U盘文
  10. Android(安卓)NDK学习 简介