iOS socket保持後台串連 ios9.0 xcode8.0

來源:互聯網
上載者:User

標籤:就會   127.0.0.1   title   今天   target   講解   可變   single   soc   

本教程是基於AsyncSocket庫的簡單開發!

socket機制今天就不說了,畢竟百度上太多太詳盡了!

1.先new一個工程;

?2.要寫socket的介面遵循<</span>AsyncSocketDelegate>代理方法;?

遵循代理方法

3.建立全域的服務發送端;

服務端

?4.在viewDidLoad裡執行個體化伺服器對象並綁定連接埠號碼;

服務端實力方法

?這裡需要注意的是:連接埠最大為65535  其中連接埠建議設定為5000以上,另外還有一些特殊連接埠,例如8080連接埠為視頻連接埠,建議不要佔用

5.實現AsyncSocket的代理方法?:

這裡可以建立一個可變數組socketArray,用來儲存接入的?連結,並保持連結;

的-1代表持續監聽,如果設定為100,就是100秒後不在監聽;?

有連結接入則會走此代理用於接收新連結發送的訊息

 

注意:iOS的機制是進入後台後程式就會進入休眠狀態!這樣就導致socket無法進行持續通訊,接下來就講解怎樣破了它!

?1.首先:plist中加入

voip

或者配置如所示

?

勾選下面兩項    主要勾選這兩項就能保持socket串連

2.然後在AppDelegate中的進入後台和返回工程裡的代理實現的方法

進入後台後和系統借用時間

?

重新回來後歸還時間

接下來在這裡寫個定時器後就實現了程式在後台持續工作了!

定時器

?

 

完成這些後就可以在網頁上訪問:127.0.0.1:5019 看看控制台的輸出了~?

git:https://github.com/SingleTap?

iOS socket保持後台串連 ios9.0 xcode8.0

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.