【问题标题】:Geting the SSID and IP address of connecting device(before connecting need to get permission) to Android hotspot(Wifi-tethering)获取连接设备的SSID和IP地址(连接前需要获得许可)到Android热点(Wifi-tethering)
【发布时间】:2012-03-30 06:10:49
【问题描述】:

我喜欢获取尝试连接我的 hoptspot 的设备的 SSID 和 IP 地址。有什么方法可以检查它们并给予许可。

【问题讨论】:

    标签: android


    【解决方案1】:

    是的,您可能应该在这样的活动中注册广播接收器

    BroadcastReceiver receiver = new BroadcastReceiver() {
     @Override
    public void onReceive(Context c, Intent intent) {
    
    
    @Override
      public void onReceive(Context c, Intent intent) {
        List<ScanResult> results = wifiDemo.wifi.getScanResults();
        ScanResult bestSignal = null;
     final String action = intent.getAction();
        if (action.equals(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION)) {
        System.out.println("booladsssssssssssssssssssssssssssssss");
      }
        for (ScanResult result : results) {
          if (bestSignal == null
              || WifiManager.compareSignalLevel(bestSignal.level, result.level) < 0)
            bestSignal = result;
        }
    
        String message = String.format("%s networks found. %s is the strongest.",
            results.size(), bestSignal.SSID);
        Toast.makeText(wifiDemo, message, Toast.LENGTH_LONG).show();
    
        Log.d(TAG, "onReceive() message: " + message);
      }
    

    你应该把所有这些权限放到你的清单文件中..

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
      <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
     <uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"></uses-permission>
     <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"> </uses-permission>
     <uses-permission android:name="android.permission.WAKE_LOCK"></uses-permission>
    

    它非常适合我。如果您对蚂蚁有疑问,请发表评论..谢谢

    【讨论】:

    • 感谢您的帮助,但我想知道如何为 scanreult 将返回的用户授予权限。我不希望少数用户登录我的热点。如果我看到他们的名字,我需要阻止他们访问我的热点。
    • 我检查了上面的代码,它只是给我自己的wifi连接状态改变,但如果客户端连接到热点没有得到任何响应....请给任何建议。
    • @ShyamDev 它将显示所有可用的 wifi ssid,之后您应该编写代码以获得许可并允许他们连接您的热点..首先您应该将其标记为答案....
    • moorthy 我正在使用一个网络共享,上面的代码不会返回 IP 地址,因为在网络共享中,正常的 wifi 活动将被禁用,因此它返回 0.0.0.0 IP 地址。这就是为什么我没有标记这个答案,但它可以在正常网络中工作。
    • 但是我得到了上面帖子的答案,我们需要从arp缓存中搜索客户端的IP地址。但我的下一个编码是用于断开特定用户与 mt 热点的连接。如果您有任何建议,请帮助我。请记住,它是系留网络,因此 wifi 管理器中的一些功能或配置将不起作用
    猜你喜欢
    • 1970-01-01
    • 2014-10-06
    • 2020-03-29
    • 2014-02-18
    • 1970-01-01
    • 2012-04-11
    • 2014-05-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多