WIFI项目--Android 获取本机IP(wifi下),子网掩码,网关,dns等信息

2024-06-09 14:58

本文主要是介绍WIFI项目--Android 获取本机IP(wifi下),子网掩码,网关,dns等信息,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

近期在捣鼓一个小项目,利用wifi热点在两手机上传输文件。进度有点慢,下面是遇到的一些小问题:
1获取手机所连接的wifi路由器ip:

ublic class MainActivity extends Activity {  private WifiManager my_wifiManager;  private WifiInfo wifiInfo;  private DhcpInfo dhcpInfo;  private TextView tvResult;  @Override  protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);  my_wifiManager = ((WifiManager) getSystemService("wifi"));  dhcpInfo = my_wifiManager.getDhcpInfo();  wifiInfo = my_wifiManager.getConnectionInfo();  tvResult = (TextView) findViewById(R.id.tvResult);  }  @Override  protected void onResume() {  super.onResume();  StringBuilder sb = new StringBuilder();  sb.append("网络信息:");  sb.append("\nipAddress:" + intToIp(dhcpInfo.ipAddress));  sb.append("\nnetmask:" + intToIp(dhcpInfo.netmask));  sb.append("\ngateway:" + intToIp(dhcpInfo.gateway));  sb.append("\nserverAddress:" + intToIp(dhcpInfo.serverAddress));  sb.append("\ndns1:" + intToIp(dhcpInfo.dns1));  sb.append("\ndns2:" + intToIp(dhcpInfo.dns2));  sb.append("\n");  System.out.println(intToIp(dhcpInfo.ipAddress));  System.out.println(intToIp(dhcpInfo.netmask));  System.out.println(intToIp(dhcpInfo.gateway));  System.out.println(intToIp(dhcpInfo.serverAddress));  System.out.println(intToIp(dhcpInfo.dns1));  System.out.println(intToIp(dhcpInfo.dns2));  System.out.println(dhcpInfo.leaseDuration);  sb.append("Wifi信息:");  sb.append("\nIpAddress:" + intToIp(wifiInfo.getIpAddress()));  sb.append("\nMacAddress:" + wifiInfo.getMacAddress());  tvResult.setText(sb.toString());  }  private String intToIp(int paramInt) {  return (paramInt & 0xFF) + "." + (0xFF & paramInt >> 8) + "." + (0xFF & paramInt >> 16) + "."  + (0xFF & paramInt >> 24);  }  
}

项目思路:
思路一:手机A在创建热点后,开启tcp服务等待请求,手机B连上手机A的wifi热点后,B向A发送上线请求(单播)。

思路二:1.开启热点一方使用开启udp监听请求,并且发送上线请求(广播);接下来连上该热点的手机同样采用这个方式,1监听–2广播;这样的好处是大家都知道对方的存在,是真正意义的群聊。2.发送文件阶段,发送方A先向接收方B方发送文件的数量以及名称等参数,发送方A并建立TCP服务等待请求,接收方发送N个数量的请求,发送方A相应创建N个线程发送文件。

今天先写这么多。。。看看资料先

项目github连接:https://github.com/AriesJiang/WIFIAPComm

这篇关于WIFI项目--Android 获取本机IP(wifi下),子网掩码,网关,dns等信息的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1045505

相关文章

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

MySQL 获取字符串长度及注意事项

《MySQL获取字符串长度及注意事项》本文通过实例代码给大家介绍MySQL获取字符串长度及注意事项,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 获取字符串长度详解 核心长度函数对比⚠️ 六大关键注意事项1. 字符编码决定字节长度2

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

python3如何找到字典的下标index、获取list中指定元素的位置索引

《python3如何找到字典的下标index、获取list中指定元素的位置索引》:本文主要介绍python3如何找到字典的下标index、获取list中指定元素的位置索引问题,具有很好的参考价值,... 目录enumerate()找到字典的下标 index获取list中指定元素的位置索引总结enumerat

怎么用idea创建一个SpringBoot项目

《怎么用idea创建一个SpringBoot项目》本文介绍了在IDEA中创建SpringBoot项目的步骤,包括环境准备(JDK1.8+、Maven3.2.5+)、使用SpringInitializr... 目录如何在idea中创建一个SpringBoot项目环境准备1.1打开IDEA,点击New新建一个项

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

Spring Boot 实现 IP 限流的原理、实践与利弊解析

《SpringBoot实现IP限流的原理、实践与利弊解析》在SpringBoot中实现IP限流是一种简单而有效的方式来保障系统的稳定性和可用性,本文给大家介绍SpringBoot实现IP限... 目录一、引言二、IP 限流原理2.1 令牌桶算法2.2 漏桶算法三、使用场景3.1 防止恶意攻击3.2 控制资源

SpringMVC高效获取JavaBean对象指南

《SpringMVC高效获取JavaBean对象指南》SpringMVC通过数据绑定自动将请求参数映射到JavaBean,支持表单、URL及JSON数据,需用@ModelAttribute、@Requ... 目录Spring MVC 获取 JavaBean 对象指南核心机制:数据绑定实现步骤1. 定义 Ja