Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何在后台处理TCP连接?_Iphone_Objective C_Sockets_Tcp - Fatal编程技术网

Iphone 如何在后台处理TCP连接?

Iphone 如何在后台处理TCP连接?,iphone,objective-c,sockets,tcp,Iphone,Objective C,Sockets,Tcp,我有一个在赌场玩宾果游戏的应用程序,带有TCP服务器。当玩家到达赌场并按Play Game时,应用程序将连接到Bingo服务器 服务器通过TCP/IP连接将新球号发送到iOS设备 如果用户按下home(主页)按钮,应用程序将转到后台,与服务器的TCP连接将保持活动状态,因为我使用以下属性生成流: [inputStream setProperty:NSStreamNetworkServiceTypeVoIP forKey:NSStreamNetworkServiceType] ; [outputS

我有一个在赌场玩宾果游戏的应用程序,带有
TCP服务器
。当玩家到达赌场并按Play Game时,应用程序将连接到Bingo服务器

服务器通过TCP/IP连接将新球号发送到iOS设备

如果用户按下home(主页)按钮,应用程序将转到后台,与服务器的TCP连接将保持活动状态,因为我使用以下属性生成流:

[inputStream setProperty:NSStreamNetworkServiceTypeVoIP forKey:NSStreamNetworkServiceType] ;
[outputStream setProperty:NSStreamNetworkServiceTypeVoP forKey:NSStreamNetworkServiceType] ;
如果应用程序转到后台,我需要更新游戏,因此我使用
nsstreamnetworkservicetypeovoip
在应用程序中进行更新

如果玩家获胜,应用程序会在有赢家时通过本地通知警告用户

如果应用程序在后台超过600秒,我将关闭与Bingo服务器的TCP连接

当玩家离开赌场时,应用程序关闭TCP连接并重置游戏

我曾读到,如果不是真正的VOIP应用,苹果会拒绝这些应用

苹果无法测试该应用程序,因为它需要墨西哥城的宾果服务器

所以我不知道我的应用是否可以发布到应用商店


他们只会在it上拒绝它,而不会像你建议的那样实际使用VOIP。通过其他技术,如后台应用程序刷新(iOS7),寻找实现您所需的其他方法

我还看到人们在后台播放静音音频文件,以在睡眠模式下达到空闲状态。尽管不鼓励这种做法,但仍有很多人在实时应用程序中使用这种技术。苹果甚至在iTunes上有无声的音频文件,你可以抓取。我认为主要的关键是让用户选择空白音频文件,而不是将其设置为默认。p>