android 扫描wifi热点,在Android中扫描wifi热点演示实例教程

该博客介绍了如何在Android平台上开发一个简单的WiFi扫描应用。首先创建了一个XML布局文件vifi.xml,包含一个TextView用于显示WiFi信息。接着,创建了一个Activity,通过WifiManager服务进行WiFi扫描,并在扫描结果可用时更新TextView显示。应用还实现了菜单项,点击可重新启动扫描。此外,博客中提到了需要申请相关权限来执行WiFi扫描操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

android:id="@+id/wifi"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/hello"

/>

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

package com.archermind.wifi;

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

private TextView wifiText;

private WifiManager wifiManager;

private StringBuilder sb;

private List wifiList;

private WifiReceiver wifiReceiver;

/** Called when the activity is first created. */

@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());

}

}

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值