生活随笔
收集整理的這篇文章主要介紹了
android手机两种方式获取IP地址
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
http://www.cnblogs.com/android100/p/Android-get-ip.html
1.使用WIFI
首先設(shè)置用戶權(quán)限
Xml代碼??
<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.WAKE_LOCK"></uses-permission>??
?
其次,代碼如下
Java代碼??
public?void?onCreate(Bundle?savedInstanceState)?{?? ????????super.onCreate(savedInstanceState);?? ????????setContentView(R.layout.main);?? ????????? ?????????? ????????WifiManager?wifiManager?=?(WifiManager)?getSystemService(Context.WIFI_SERVICE);?? ?????????? ????????if?(!wifiManager.isWifiEnabled())?{?? ????????wifiManager.setWifiEnabled(true);???? ????????}?? ????????WifiInfo?wifiInfo?=?wifiManager.getConnectionInfo();??????? ????????int?ipAddress?=?wifiInfo.getIpAddress();??? ????????String?ip?=?intToIp(ipAddress);??? ????????EditText?et?=?(EditText)findViewById(R.id.EditText01);?? ????????et.setText(ip);?? ????}????? ????private?String?intToIp(int?i)?{??????? ????????? ??????????return?(i?&?0xFF?)?+?"."?+??????? ????????((i?>>?8?)?&?0xFF)?+?"."?+??????? ????????((i?>>?16?)?&?0xFF)?+?"."?+??????? ????????(?i?>>?24?&?0xFF)?;?? ?????}???
?
2.使用GPRS
首先,設(shè)置用戶上網(wǎng)權(quán)限
Xml代碼??
<uses-permission?android:name="android.permission.INTERNET"></uses-permission>??
?
其次,代碼如下
Java代碼??
public?String?getLocalIpAddress()?? ????{?? ????????try?? ????????{?? ????????????for?(Enumeration<NetworkInterface>?en?=?NetworkInterface.getNetworkInterfaces();?en.hasMoreElements();)?? ????????????{?? ???????????????NetworkInterface?intf?=?en.nextElement();?? ???????????????for?(Enumeration<InetAddress>?enumIpAddr?=?intf.getInetAddresses();?enumIpAddr.hasMoreElements();)?? ???????????????{?? ???????????????????InetAddress?inetAddress?=?enumIpAddr.nextElement();?? ???????????????????if?(!inetAddress.isLoopbackAddress())?? ???????????????????{?? ???????????????????????return?inetAddress.getHostAddress().toString();?? ???????????????????}?? ???????????????}?? ???????????}?? ????????}?? ????????catch?(SocketException?ex)?? ????????{?? ????????????Log.e("WifiPreference?IpAddress",?ex.toString());?? ????????}?? ????????return?null;?? ????} ?
總結(jié)
以上是生活随笔為你收集整理的android手机两种方式获取IP地址的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。