Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.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
Ios 在单例初始化期间尝试发送异步get请求时发生异常_Ios_Objective C_Singleton_Nsjsonserialization - Fatal编程技术网

Ios 在单例初始化期间尝试发送异步get请求时发生异常

Ios 在单例初始化期间尝试发送异步get请求时发生异常,ios,objective-c,singleton,nsjsonserialization,Ios,Objective C,Singleton,Nsjsonserialization,这是我的密码: + (instancetype)sharedInstance { static PanoramaDataManager *sharedInstance = nil; static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ sharedInstance = [[PanoramaDataManager alloc] init]; [NSURLConne

这是我的密码:

+ (instancetype)sharedInstance
{
    static PanoramaDataManager *sharedInstance = nil;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        sharedInstance = [[PanoramaDataManager alloc] init];
        [NSURLConnection sendAsynchronousRequest:[sharedInstance requestToService:kPanoramaAPIGetToken withParams:@{@"login" : kPanoramaAPILogin, @"password" : kPanoramaAPIPassword}] queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
            if (!connectionError) {
                NSError *error;
                NSDictionary *jsonResponse = [NSJSONSerialization JSONObjectWithData:data
                                                                             options:kNilOptions
                                                                               error:&error];
                if (!error) {
                    sharedInstance.token = [jsonResponse objectForKey:@"token"];
                } else {
                    [BxAlertView showError:error.description];
                }
            } else {
                [BxAlertView showError:connectionError.description];
            }
        }];
    });
    return [sharedInstance autorelease];
}

我只想将请求发送到服务器,以便在单例初始化期间接收所有rest请求的令牌。但是我在尝试设置属性的行中有一个异常,即访问错误。如果我试图写NSError*error=nil;应用程序已停止,但访问错误除外。有什么帮助吗?

在返回时删除自动释放


如果您释放一个静态变量,您将丢失用指针处理的值。

删除该自动释放您刚刚从@Midhun MP复制了注释。你能解释一下,这将如何去除自动释放。最好在答案中添加一个解释。@pawan Nope看看我之前说过的时间戳如果释放一个静态变量,您将丢失用指针寻址的值。