0

アプリがバックグラウンドになったら、Web サービスに最終リクエストを送信したいと考えています。しかし、リクエストが完了するまで待っていないようです。誰かがこれで私を助けることができますか?

これが私がすることです

- (void)applicationDidEnterBackground:(UIApplication *)application{
    NSMutableArray *arrFavorites = [[NSMutableArray alloc]init];
    GenkonStageDataModel *model = [[GenkonStageDataModel alloc]init];
    arrFavorites = [model getAllFavorites];

    API *api = [API new];

  //create dictionary values

   NSManagedObjectContext *context = [RKManagedObjectStore defaultStore].persistentStoreManagedObjectContext;
    NSDictionary *dict = [[NSDictionary alloc]initWithObjectsAndKeys:uuid,@"uuId",strFav,@"pushFavorits",favPush,@"push", nil];
    RKObjectManager *objectManager = [api mapGetData];
    [objectManager getObjectsAtPath:@"/webservice/apnsusers/update" parameters:dict
                            success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
                                NSError *error = nil;
                                BOOL success = [objectManager.managedObjectStore.mainQueueManagedObjectContext  save:&error];
                                if (!success) RKLogWarning(@"Failed saving managed object context: %@", error);

                                NSLog(@"updated favorites");
                            }
                            failure:^(RKObjectRequestOperation *operation, NSError *error) {
                                  UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error"
                                 message:[error localizedDescription]
                                 delegate:nil
                                 cancelButtonTitle:@"OK"
                                 otherButtonTitles:nil];
                                  [alert show];
                                NSLog(@"Hit error: %@", error);
                            }];
    NSError *error2 = nil;
    [context save:&error2];


}
4

1 に答える 1