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中加入
或者配置如下图所示
2.然后在AppDelegate中的进入后台和返回工程里的代理实现如图的方法
接下来在这里写个定时器后就实现了程序在后台持续工作了!
完成这些后就可以在网页上访问:127.0.0.1:5019 看看控制台的输出了~
git:https://github.com/SingleTap
iOS socket保持后台连接 ios9.0 xcode8.0的更多相关文章
- IOS Socket 03-建立连接与登录
1. 搭建python服务器 这里我们用到python服务器Socket Server.如何运行Server?下面介绍 1)通过百度云下载文件 http://pan.baidu.com/s/1i5yb ...
- iOS socket原理及连接过程详解
连接过程图解(度娘的拿过来用)
- IOS Socket 04-利用框架CocoaAsyncSocket实现客户端/服务器端
这篇文章,我们介绍CocoaAsyncSocket框架的使用,主要介绍实现客户端/服务器端代码,相信在网上已经很多这样的文章了,这里做一下自己的总结.这里介绍使用GCD方式 一.客户端 1.下载地址 ...
- IOS Socket 02-Socket基础知识
1. 简介 Socket就是为网络服务提供的一种机制 通信的两端都是Socket 网络通信其实就是Socket间的通信 数据在两个Socket间通过IO传输 2. Socket通信流程图 3. 模拟Q ...
- iOS应用中通过设置VOIP模式实现休眠状态下socket的长连接
如果你的应用程序需要在设备休眠的时候还能够收到服务器端发送的消息,那我们就可以借助VOIP的模式来实现这一需求.但是如果的应用程序并不是正真的VOIP应用,那当你把你的应用提交到AppStore的时候 ...
- iOS真机调试步骤(Xcode8.0以上版本)(2015年)
方法/步骤(转载:http://jingyan.baidu.com/article/22fe7ced20cc073002617f97.html) 获取真机调试的证书,先在本地生成获取证书的文件,找不到 ...
- [转] iOS应用中通过设置VOIP模式实现休眠状态下socket的长连接
转自:http://blog.csdn.net/missautumn/article/details/17102067 如果你的应用程序需要在设备休眠的时候还能够收到服务器端发送的消息,那我们就可 ...
- iOS:xCode7版本运行xCode8.0的代码
怎么在xCode7版本上运行xCode8.0的代码? 1.右键你的"LaunchScreen.sb"文件并用编辑器打开sb 2.删掉"<capability nam ...
- iOS Socket 整理以及CocoaAsyncSocket、SRWebSocket源码解析(一)
写在准备动手的时候: Socket通讯在iOS中也是很常见,自己最近也一直在学习Telegram这个开源项目,Telegram就是在Socket的基础上做的即时通讯,这个相信了解这个开源项目的也都知道 ...
随机推荐
- selenium移动div里面的滚动条,操作弹出对话框
还是使用js来移动 首先要定位到这个元素 倾向于使用js来定位元素,输入下面的脚本,按下回车键,即可在调试页面看到对应的div块$("div.table-responsive") ...
- poj 1328 Radar Installation
题目链接:http://poj.org/problem?id=1328 题意:给出海上有n个小岛的坐标,求发出的信号可以覆盖全部小岛的最少的雷达个数.雷达发射信号是以雷达为圆心,d为半径的圆,雷达都在 ...
- Linux 服务器IO模型 epoll
epoll模型 #include <unistd.h> #include <sys/types.h> /* basic system data types */ #includ ...
- ajax和sap以及网络安全
1.sap(single page applaction)一个页面通过众多ajax请求完成的一个app 优点是:减少页面跳转,UI公用部分的重复加载 缺点: 1.ajax过多的请求,对服务器性能有所 ...
- iOS 架构模式--解密 MVC,MVP,MVVM以及VIPER架构
本文由CocoaChina译者lynulzy(社区ID)翻译 作者:Bohdan Orlov 原文:iOS Architecture Patterns 在 iOS 中使用 MVC 架构感觉很奇怪? 迁 ...
- About “this” of Javascript
the 4 point about This: 1.the use of Object methods 2.the use of constructors 3.the use of ordinary ...
- 深入了解 Scala 并发性
2003 年,Herb Sutter 在他的文章 “The Free Lunch Is Over” 中揭露了行业中最不可告人的一个小秘密,他明确论证了处理器在速度上的发展已经走到了尽头,并且将由全新的 ...
- 运维之netstat
实用命令实例 1. 列出所有端口 (包括监听和未监听的) 列出所有端口 netstat -a # netstat -a | more Active Internet connections ( ...
- 基础篇-初步认识PE格式
1 PE(Portable Executable)格式,是Win32环境可移植可执行文件(如exe.dll.vxd.sys和vdm等)的标准文件格式.PE格式衍生于早期建立在VAX(R)VMS(R)上 ...
- Android studio打开之后 cannot load project: java.lang.NUllpointerException
参考来源:http://bbs.csdn.net/topics/391014393 关闭网络,重新打开Android studio就好了.(但是原因不清楚是为什么?) Internal error. ...