如何将gcdweberveroption_automomelysususpendinbackground设置为否



我是iOS的新手,并且在Android方面有一些经验。我正在使用gcdwebuploader。它的工作正常。

当应用在后台时,服务器暂停。我知道iOS背景执行中的约束。我不想改变这种行为。

但我在GCDWeberver文档中发现我们可以禁用此暂停。在此处查看https://github.com/swisspol/gcdweberver#gcdwebserver-background-mode-for-ios-apps。特别是此部分

如果该应用在未打开HTTP连接的情况下进入后台,则GCDWebserver会立即暂停自身并停止接受新连接,就好像您称为-STOP (可以使用**** gcdweberveroption_automationalomationalomationalomationalomationalomationalomationalomationalyspendomationalomationalomationalyspendomatelogationspendinbackgroundspendomationalomationalyspendomationalomationalomationalyspendinbackground nocation this行为****选项)

您如何设置此选项。我尝试了

GCDWebServerOption_AutomaticallySuspendInBackground = "NO"

我得到了明显的错误:

无法分配给值: 'gcdwebserveroption_automomationsususpendinbackground'是" let' 常数

您应该使用 NSDictionary传递配置选项,并从gcdweberver实例中使用以下方法:

- (BOOL)startWithOptions:(NSDictionary*)options error:(NSError**)error;

编辑:一个实用示例

NSError*myError = nil;
self.webServer = [[GCDWebServer alloc] init];
BOOL success = [self.webServer startWithOptions:@{
               GCDWebServerOption_AutomaticallySuspendInBackground : @(NO)
               } error:&myError];

Swift Code

var myError: NSError?
let webServer = GCDWebServer()
webServer.startWithOptions([GCDWebServerOption_AutomaticallySuspendInBackground : false], error: myError)

一点提示:如果要更改GCDWeberver日志级别,则可以使用静态方法:

[GCDWebServer setLogLevel:4];

相关内容

  • 没有找到相关文章

最新更新