iPhone网络软件在睡眠情况断线问题解决

移动开发 iOS
iPhone网络软件在睡眠情况断线问题解决是本文要介绍的内容,主要是来学习iphone网络软件的使用,具体是如何实现的了,来考哪本文详细内容。

iPhone网络软件在睡眠情况断线问题解决是本文要介绍的内容,主要是来学习iphone网络软件的使用。如果你希望使用iPhone的网功能并保持长连接,并使用Wifi的话,你可能会发现一个问题,那就是在iPhone处于睡眠状态时,Wifi会中断,这样程序就无法保持连接。(iPhone非官方SDK)

下面的代码可能会帮你解决这个问题。

以下代码摘自MobileChat:

首先在applicationDidFinishLaunching方法中添加以下代码:

  1. IONotificationPortRef notificationPort;  
  2.  
  3. root_port = IORegisterForSystemPower(self, &notificationPort, powerCallback, &notifier);  
  4.  
  5. CFRunLoopAddSource(CFRunLoopGetCurrent(), IONotificationPortGetRunLoopSource(notificationPor t), kCFRunLoopCommonModes);  

接着添加如下全局方法(在所有类之外添加)

  1. void powerCallback(void *refCon, io_service_t service, natural_t messageType, void *messageArgument) {  
  2. [(YourAppnameApp*)refCon powerMessageReceived: messageType withArgument: messageArgument];  
  3. }  

在你的程序里添加下面的代码:

  1. - (void)powerMessageReceived:(natural_t)messageType withArgument:(void *) messageArgument {  
  2. switch (messageType) {  
  3. case kIOMessageSystemWillSleep:  
  4. IOAllowPowerChange(root_port, (long)messageArgument);   
  5. break;  
  6. case kIOMessageCanSystemSleep:  
  7. //if([self wifiKeepAliveIsSet]) {  
  8. IOCancelPowerChange(root_port, (long)messageArgument);  
  9. //}  
  10. break;   
  11. case kIOMessageSystemHasPoweredOn:  
  12. break;  
  13. }  

这样就可以保持iPhone在网络连接的状况下不睡眠了(当然,可能会比较费电 ^_^)。

小结:iPhone网络软件在睡眠情况断线问题解决的内容介绍完了,希望通过本文的学习能对你有所帮助!

责任编辑:zhaolei 来源: 网易博客
相关推荐

2011-07-20 16:52:26

iPhone 网络 睡眠

2018-10-22 14:19:52

网络组建网络网络管理

2015-07-28 11:29:01

网络软件

2011-06-27 16:44:59

Qmake

2011-06-13 16:16:32

Qt 中文问题

2011-08-10 14:29:08

2010-06-17 11:35:24

Ubuntu 修复Gr

2010-04-28 18:01:15

Unix系统

2009-06-03 15:50:51

eclipse中启动超eclipsetomcat

2011-09-07 17:41:01

ubunturvm

2011-08-03 11:07:01

布线管理软件

2011-09-06 09:26:03

2010-05-05 10:25:24

Unix操作系统

2011-11-28 22:45:19

Nginxsession

2009-12-28 10:56:45

WPF Image

2010-05-05 14:20:46

AIX CDE

2012-05-09 10:08:41

跨机房

2011-01-21 14:13:10

2011-07-27 15:03:54

iPhone 升级 编译

2010-07-29 15:28:47

Flex安全沙箱
点赞
收藏

51CTO技术栈公众号