由于升級到IOS5,原來的應用在斷開WIFI(鎖屏幕或屏幕自動熄滅)的時候,程序自動退出了,跟蹤了一下,發現是收到了SIGPIPE信號。可是之前的系統版本就沒有這個問題,而且廣播也沒有。所以還是處理一下這個信號,在創建Socket的時候,設置SO_NOPIPE 參數,并且在屏幕重新亮起的時候,把socket重新建立一遍,保證連接。
查到一個Apple給一個用戶的回復郵件,還有Demo代碼:
http://www.badrit.com/blog/2010/11/30/ignore-sigpipe-signal-on-ios#comment-wrap
如果你在升級到IOS5后同樣遇到了網絡問題,可以聯系我,cokecoffe@qq.com