再来一篇,获取本地IP,三种方法:

(1)在Day 4教程里面的NSHost(http://appsamuck.com/day4.html)也能取到IP,不过是私有的API

 

(2)从C struct的地址取(http://stackoverflow.com/questions/3538365/iphone-get-ip-address-of-the-current-wifi),有人回复说返回error,经过单步debug之后,发现只要修改一下即可,循环判断里面原来判断是"en0",单步的时候会得到en1值,加个或运算,即可正确返回,不知道还有木有en2,en3之类的…

(3)也是C的方式,不过更复杂(http://www.iphonedevsdk.com/forum/iphone-sdk-development/5293-get-current-ip-address.html 用了整个C文件…),说是从Mac下移植的,开始不用改就能用,后来又有帖子说,只能取一次,第二次调用返回null(http://www.iphonedevsdk.com/forum/iphone-sdk-development/26780-how-get-local-ip.html),又得单步debug…太复杂了,懒得debug,观察init和free之类的有木有问题,可能是没清空缓存之类的,发现有个static int的很可疑,既然每次都会保存上次的值,估计对本次会有影响,那么就应该在init里面重新初始化为0,至此OK

  总的来说,光是靠拿来主义是不够滴,有些还是得自己动手,丰衣足食.细节是魔鬼