我需要找到我的软件上运行的手机的IP地址。 我本来以为是直线前进,但已经搜查,好像(令人难以置信足够了),有没有在Windows Phone 7的这个方法论坛 - 然而,这已经在Windows 8手机改变? 任何帮助,将不胜感激。
Answer 1:
是的,这是现在在WP8可能不使用WP7需要进行多播解决方案。 请注意,您有(我的WP8模拟器例如三个),您的手机上有多个网络接口
public static IPAddress Find()
{
List<string> ipAddresses = new List<string>();
var hostnames = NetworkInformation.GetHostNames();
foreach (var hn in hostnames)
{
if (hn.IPInformation != null)
{
string ipAddress = hn.DisplayName;
ipAddresses.Add(ipAddress);
}
}
IPAddress address = IPAddress.Parse(ipAddresses[0]);
return address;
}
HTH
Answer 2:
当然还有就是找手机IP地址的方式。 这里是一个MSDN博客博客文章中解释如何做到这一点: 找到你自己的IP地址的Windows Phone芒果
我刚刚测试了我的诺基亚Lumia 920(的Windows Phone 8)和它的作品就好了。 然而,这只是工作在WiFi由于使用组播IP地址。
Answer 3:
代号为Windows RT
public static string GetIpAddress()
{
var address = "";
var icp = NetworkInformation.GetInternetConnectionProfile();
if (icp != null && icp.NetworkAdapter != null)
{
var hostname =
NetworkInformation.GetHostNames()
.SingleOrDefault(
hn =>
hn.IPInformation != null && hn.IPInformation.NetworkAdapter != null
&& hn.IPInformation.NetworkAdapter.NetworkAdapterId
== icp.NetworkAdapter.NetworkAdapterId);
if (hostname != null)
{
address = hostname.CanonicalName;
}
}
return address;
}
文章来源: IP address in windows phone 8