首页 > 代码库 > iOS socket保持后台连接 ios9.0 xcode8.0
iOS socket保持后台连接 ios9.0 xcode8.0
本教程是基于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个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。