Android 在wifi下获取IP和MAC地址
2013-03-13 09:12
429 查看
转自 http://www.2cto.com/kf/201207/143403.html
Button
//这里是权限
//接下来就是正文
Button
01 android:id="@+id/btn" 03 android:text="获取IP" 04 android:layout_width="fill_parent" 05 android:layout_height="wrap_content" 06 android:onClick="onclick" 07 /> 08 <EditText 09 android:id="@+id/ip_txt" 10 android:layout_width="fill_parent" 11 android:layout_height="wrap_content"/> 12 13 <EditText 14 android:id="@+id/mac_txt" 15 android:layout_width="fill_parent" 16 android:layout_height="wrap_content"/>
//这里是权限
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission> <uses-permission android:name="android.permission.INTERNET"></uses-permission>
//接下来就是正文
01 package com.wifi; 02 03 import java.net.InetAddress; 04 import java.net.NetworkInterface; 05 import java.net.SocketException; 06 import java.util.Enumeration; 07 08 import android.app.Activity; 09 import android.content.Context; 10 import android.net.wifi.WifiInfo; 11 import android.net.wifi.WifiManager; 12 import android.os.Bundle; 13 import android.util.Log; 14 import android.view.View; 15 import android.widget.Button; 16 import android.widget.EditText; 17 public class MainActivity extends Activity { 18 public static String IP; //本机IP 19 public static String MAC; //本机MAC 20 21 Button btn=null; 22 EditText ip_txt=null; 23 EditText mac_txt=null; 24 @Override 25 public void onCreate(Bundle savedInstanceState) { 26 super.onCreate(savedInstanceState); 27 setContentView(R.layout.main); 28 btn=(Button)findViewById(R.id.btn); 29 ip_txt=(EditText)findViewById(R.id.ip_txt); 30 mac_txt=(EditText)findViewById(R.id.mac_txt); 31 32 } 33 public void onclick(View v){ 34 switch (v.getId()) { 35 case R.id.btn: 36 IP = getLocalIpAddress(); //获取本机IP 37 MAC = getLocalMacAddress();//获取本机MAC 38 ip_txt.setText(IP); 39 mac_txt.setText(MAC); 40 break; 41 } 42 } 43 44 public String getLocalIpAddress() { 45 try { 46 for (Enumeration<NetworkInterface> en = NetworkInterface 47 .getNetworkInterfaces(); en.hasMoreElements();) { 48 NetworkInterface intf = en.nextElement(); 49 for (Enumeration<InetAddress> enumIpAddr = intf 50 .getInetAddresses(); enumIpAddr.hasMoreElements();) { 51 InetAddress inetAddress = enumIpAddr.nextElement(); 52 if (!inetAddress.isLoopbackAddress()) { 53 return inetAddress.getHostAddress().toString(); 54 } 55 } 56 } 57 } catch (SocketException ex) { 58 Log.e("WifiPreference IpAddress", ex.toString()); 59 } 60 return null; 61 } 62 63 public String getLocalMacAddress() { 64 WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); 65 WifiInfo info = wifi.getConnectionInfo(); 66 return info.getMacAddress(); 67 } 68 }
相关文章推荐
- Android获取Ethernet、WIFI的ip和mac地址
- Android中Wifi未开启情况下获取Mac地址和IP
- Android中Wifi未开启情况下获取Mac地址和IP
- Android中Wifi未开启情况下获取Mac地址和IP
- Android中Wifi未开启情况下获取Mac地址和IP
- Android 6.0获取wifi Mac地址为02:00:00:00:00:00的解决方法
- android获取wifi的IP,子网掩码,网关,dns等信息
- Android 获取WIFI MAC地址的方法
- Android 连接wifi下获取内网ip 获取到10.152.x.x类的 我想获取192.168.x.x类的,怎么做啊 - -.
- android 移动数据流量打开导致获取wifi热点IP错误
- Android关于获取到本机ip和mac地址
- WIFI项目--Android 获取本机IP(wifi下),子网掩码,网关,dns等信息
- Android获取手机WiFi IP地址,MAC地址和网关地址程序实例
- android程序获取WIFI的IP地址和MAC地址
- Android获取Ethernet、WIFI的ip和mac地址
- Android 判断网络是否可用、网络类型WIFI/2G/3G/4G及获取IP
- Android 6.0获取wifi Mac地址为02:00:00:00:00:00的解决方法
- Android wifi 外网ip 完善代码,保证http和手机都能获取到
- android获取Mac地址和IP 地址
- android获取wifi的IP,子网掩码,网关,dns等信息