Vai al contenuto





fermat

Download dei file asincrono in ipad

Recommended Posts

ciao!

sto sviluppando una app per ipad.

alla pressione di un bottone dovrebbe scaricare 5 file da un server remoto.

ho creato una classe per il download con questo metodo:

+ (void)download:(NSString *)file {
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSURL *url = [NSURL URLWithString:[@"http://www.sito.it/" stringByAppendingString:file]];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    NSString *strFile = [documentsDirectory stringByAppendingPathComponent:file];
    AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
    [operation setOutputStream:[NSOutputStream outputStreamToFileAtPath:strFile append:NO]];
    [operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
        NSLog(@"Successfully downloaded file to %@", strFile);
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"Error: %@", error);
    }];
    [[NSOperationQueue mainQueue] addOperation:operation];
}

poi nel controller:

- (IBAction)actionDownload:(id)sender {
    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
    dispatch_async(queue, ^{
        [Download download:@"last_entries.json"];
        [Download download:@"last_releases.json"];
        [Download download:@"causali.json"];
        [Download download:@"conti.json"];
        [Download download:@"gps.json"];
    });
}

il tutto funziona, ma volevo capire se stavo facendo bene.

sto cercando di seguire le linee guida, ma a dire il vero non capisco fino a che punto faccio giusto.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti


Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Ospite
Rispondi a questa discussione...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Crea Nuovo...

Info

Per offrirti il miglior servizio possibile il sito utilizza cookies, anche di terze parti e profilazione. Utilizzando il sito acconsenti al loro impiego. Privacy Policy Termini di utilizzo