v1.1.1+2wifi_hunter
一个 Flutter 包,用于获取您周围所有 WiFi 接入点的信息。
一个 Flutter 包,用于获取您周围所有 WiFi 接入点的信息。
{"sdk":"flutter"}{"sdk":"flutter"}^2.1.1以下为英文项目原文快照,最新内容请访问 GitHub。
A flutter package to hunt down info from all WiFi APs around you.
version BSD License PRs Welcome
demo.gif
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'dart:async';
import 'package:wifi_hunter/wifi_hunter.dart';
import 'package:wifi_hunter/wifi_hunter_result.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({Key? key}) : super(key: key);
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
WiFiHunterResult wiFiHunterResult = WiFiHunterResult();
Future<void> huntWiFis() async {
try {
wiFiHunterResult = (await WiFiHunter.huntWiFiNetworks)!;
} on PlatformException catch (exception) {
print(exception.toString());
}
for (var i = 0; i < wiFiHunterResult.results.length) {
print(wiFiHunterResult.results[i].ssid);
print(wiFiHunterResult.results[i].bssid);
print(wiFiHunterResult.results[i].capabilities);
print(wiFiHunterResult.results[i].frequency);
print(wiFiHunterResult.results[i].level);
print(wiFiHunterResult.results[i].channelWidth);
print(wiFiHunterResult.results[i].timestamp);
}
if (!mounted) return;
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('WiFiHunter example app'),
),
body: ElevatedButton(
onPressed: () => huntWiFis(),
child: const Text('Hunt Networks')
)
);
}
}
Here is what infos you can get by using this package :
String[] SSIDs
String[] BSSIDs
String[] Signal strength
int[] Frequencies
int[] Capabilities
int[] Channel widths
long[] Timestamps (of information retrieval)
... of all WiFi APs in reach.
When running the sample app, make sure you've granted it the location permissions available in the system preferences, as there is currently no permission dialog implemented in the example app.
The permission settings are available under Settings > Apps > wifi_hunter_example > Permissions > Location > Allow only while using the app
Starting with Android 8.0 and up, the operating system severely limits the number of WiFi scans.
Please keep this limit in mind when implementing your scan issuing logic.
Find out more about these limits on developer.android.com.
You can get a good overview of pretty much all related log entries by searching for wifi in the Logcat output.