相关疑难解决方法(0)

适用于iOS 8扩展的AFNetworking后台会话配置

我目前正在开发iOS 8 App扩展程序,并且最后一篇文章遇到了困难.在我的应用程序的其余部分,我使用AFHTTPSessionManager子类,我实例化如下:

+ (MYAPIClient *)sharedClient {
    static MYAPIClient *_sharedClient = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        _sharedClient = [[MYAPIClient alloc] initWithBaseURL:[NSURL URLWithString:kMYBaseURL]];
        _sharedClient.requestSerializer = [[MYAPIRequestSerializer alloc] init];
        _sharedClient.responseSerializer = [[MYAPIResponseSerializer alloc] init];
    });
    return _sharedClient;
}
Run Code Online (Sandbox Code Playgroud)

当我刚刚使用这个常规API客户端时,只需在共享扩展中发布一些文本就可以了,它甚至可以用于图像(虽然通常会失败),但我知道我需要使用后台会话配置.所以我用一个像这样的后台配置设置制作了一个非常相似的api客户端:

+ (MYAPIClient *)sharedBackgroundClient {
    static MYAPIClient *_sharedClient = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{

        NSURLSessionConfiguration *sessionConfiguration = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:@"com.me.myapp.backgroundconfiguration"];
        _sharedClient = [[MYAPIClient alloc] initWithBaseURL:[NSURL URLWithString:kMYBaseURL] sessionConfiguration:sessionConfiguration];
        _sharedClient.requestSerializer = [[MYAPIRequestSerializer alloc] init];
        _sharedClient.responseSerializer = [[MYAPIResponseSerializer alloc] init];
    });
    return _sharedClient;
}
Run Code Online (Sandbox Code Playgroud)

问题是,当我使用这个客户端进行POST时,我每次都会得到这些错误.

Aug …
Run Code Online (Sandbox Code Playgroud)

objective-c ios afnetworking nsurlsession ios8

9
推荐指数
1
解决办法
5542
查看次数

标签 统计

afnetworking ×1

ios ×1

ios8 ×1

nsurlsession ×1

objective-c ×1