package com.example.defangfang.getipinfoonandroid;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.text.Html;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import org.json.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
public class MainActivity extends AppCompatActivity {
static final String TAG = "MainActivity";
public static final int UPDATE_TEXT = 1;
Button mButton;
TextView textview;
private Handler mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
switch (msg.what){
case UPDATE_TEXT:
IPInfomation ipinfo = new IPInfomation(MainActivity.this);
String ipadd = ipinfo.getWIFILocalIpAdress();
String macadd = ipinfo.getMacAddress();
//String hostip = ipinfo.getHostAddress();
Log.i(TAG, "onClick: sfafdasf");
//textview.setText("内网ip为:"+ipadd+"\nMAC地址为:"+macadd);
String hostip = (String) msg.obj;
//String ipinfo = (String)textview.getText();
textview.setText("内网ip为:"+ipadd+"\nMAC地址为:"+macadd+"\n网关地址为:"+hostip);
break;
default:
break;
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mButton = (Button) findViewById(R.id.button);
textview = (TextView) findViewById(R.id.textView);
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new Thread(new Runnable() {
@Override
public void run() {
URL infoUrl = null;
InputStream inStream = null;
Log.i(TAG, "haha");
try
{
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder().url("http://1212.ip138.com/ic.asp").build();
Response response = client.newCall(request).execute();
String responseData = response.body().string();
responseData = Html.fromHtml(responseData).toString();
String hostIp = responseData.substring(responseData.indexOf("[") + 1, responseData.indexOf("]"));
Log.i(TAG, hostIp);
Message message = new Message();
message.what = UPDATE_TEXT;
message.obj = hostIp;
mHandler.sendMessage(message);
}
catch(MalformedURLException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
//下面的操作只是对通过淘宝接口获取的一次尝试,经实践证实,失败了。
String IP = "";
try
{
String address = "http://ip.taobao.com/service/getIpInfo2.php?ip=myip";
URL url = new URL(address);
HttpURLConnection connection = (HttpURLConnection) url
.openConnection();
connection.setUseCaches(false);
if (connection.getResponseCode() == HttpURLConnection.HTTP_OK)
{
InputStream in = connection.getInputStream();
// 将流转化为字符串
BufferedReader reader = new BufferedReader(
new InputStreamReader(in));
String tmpString = "";
StringBuilder retJSON = new StringBuilder();
while ((tmpString = reader.readLine()) != null)
{
retJSON.append(tmpString + "\n");
}
Log.i(TAG, retJSON.toString());
JSONObject jsonObject = new JSONObject(retJSON.toString());
String code = jsonObject.getString("code");
if (code.equals("0"))
{
JSONObject data = jsonObject.getJSONObject("data");
IP = data.getString("ip") + "(" + data.getString("country")
+ data.getString("area") + "区"
+ data.getString("region") + data.getString("city")
+ data.getString("isp") + ")";
Log.e(TAG, "您的IP地址是:" + IP);
}
else
{
IP = "";
Log.e(TAG, "IP接口异常,无法获取IP地址!");
}
}
else
{
IP = "";
Log.e(TAG, "网络连接异常,无法获取IP地址!");
}
}
catch (Exception e)
{
IP = "";
Log.e(TAG, "获取IP地址时出现异常,异常信息是:" + e.toString());
}
}
}).start();
}
});
Log.i(TAG, "onCreate: ");
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
如果您下载了本程序,但是该程序存在问题无法运行,那么您可以选择退款或者寻求我们的帮助(如果找我们帮助的话,是需要追加额外费用的)。另外,您不会使用资源的话(这种情况不支持退款),也可以找我们帮助(需要追加额外费用) 随着移动互联网技术的发展和用户需求的变化,【小程序名称】应运而生,以其轻量化、便捷化的设计理念为用户提供了一种全新的服务模式。作为一款无需下载安装即可使用的应用,【小程序名称】依托于微信庞大的生态系统,让用户在微信内就能轻松实现各种功能操作。 【小程序名称】的核心功能主要集中在【具体服务领域】,例如在线购物、本地生活服务、教育学习或健康管理等。它简化了传统APP繁琐的注册登录流程,支持微信一键授权登录,极大地提升了用户体验。用户通过搜索或扫描二维码,瞬间即可开启使用,享受快速加载、流畅运行的服务。 该小程序界面设计简洁明了,布局合理,易于上手。同时,其特色功能如实时更新的信息推送、个性化推荐以及社交分享功能,让用户能够及时获取所需信息,并方便地将优质内容分享至朋友圈或好友,实现信息的高效传播与互动。 【小程序名称】注重数据安全与隐私保护,严格遵守国家法律法规和微信平台的规定,确保用户数据的安全无虞。此外,其背后的开发团队持续迭代更新,根据用户反馈不断优化产品性能,提升服务质量,致力于打造一个贴近用户需求、充满活力的小程序生态。 总结来说,【小程序名称】凭借其小巧便携、快捷高效的特性,不仅节省了用户的手机存储空间,更为用户提供了无缝衔接的便利服务,是现代生活中不可或缺的一部分,真正实现了“触手可及”的智能生活新体验。只需轻点屏幕,无限精彩尽在掌握之中。
资源推荐
资源详情
资源评论
收起资源包目录
获取Android手机WiFi局域网下ip地址和MAC地址以及网关地址的小程序.zip (37个子文件)
SJT-code
gradle.properties 860B
gradle
wrapper
gradle-wrapper.jar 52KB
gradle-wrapper.properties 230B
app
src
androidTest
java
com
example
defangfang
getipinfoonandroid
ExampleInstrumentedTest.java 786B
test
java
com
example
defangfang
getipinfoonandroid
ExampleUnitTest.java 419B
main
java
com
example
defangfang
getipinfoonandroid
MainActivity.java 6KB
IPInfomation.java 1KB
res
mipmap-xxhdpi
ic_launcher_round.png 10KB
ic_launcher.png 8KB
mipmap-hdpi
ic_launcher_round.png 4KB
ic_launcher.png 3KB
mipmap-mdpi
ic_launcher_round.png 2KB
ic_launcher.png 2KB
mipmap-xxxhdpi
ic_launcher_round.png 14KB
ic_launcher.png 10KB
mipmap-xhdpi
ic_launcher_round.png 6KB
ic_launcher.png 5KB
values
colors.xml 208B
strings.xml 142B
styles.xml 383B
layout
activity_main.xml 919B
AndroidManifest.xml 1KB
proguard-rules.pro 937B
build.gradle 937B
.gitignore 7B
gradlew.bat 2KB
build.gradle 498B
.idea
runConfigurations.xml 564B
misc.xml 3KB
compiler.xml 686B
modules.xml 373B
gradle.xml 626B
encodings.xml 159B
copyright
profiles_settings.xml 74B
settings.gradle 15B
gradlew 5KB
.gitignore 118B
共 37 条
- 1
资源评论
JJJ69
- 粉丝: 6350
- 资源: 5918
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 远程访问工具+支持xftp功能
- CrystalDiskInfo Aoi Edition
- java项目,课程设计-ssmVue汉服文化平台网站
- github加速小软件
- halcon初学者适用案例共500M颜色识别 OCR文字识别,图像分割,图像增强 寻找手机关屏幕状态 形态学处理 手眼标定
- Desk-Emoji 是一款真正的开源 AI 桌面机器人,具有表情符号屏幕、双轴控制台和用于语音聊天的 LLM 功能
- uniapp的swiper轮播图实现第一页不右滑,最后一页不左滑,官方的swiper调试不了,手写实现
- java项目,课程设计-ssm病人跟踪治疗信息管理系统
- 中国电子学会C++真题与答案.zip
- 创维8A07机芯 E750系列 主程序软件 电视刷机 固件升级包1.51.0 V140402
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功