Si vous parlez -initWithContentsOfURL:
de NSString
, il a été deprecated.
Mais même si vous utilisez, il est une méthode synchrone - ce qui signifie votre code arrêtera jusqu'à ce que les données ont été chargées dans l'objet NSString
résultant:
NSURL *url = [NSURL URLWithString:@"http://google.com"];
NSString *htmlData = [NSString stringWithContentsOfURL:url];
NSLog(@"%@", htmlData); // you have your data loaded here, synchronously.
Donc, pour être clair: c'est une mauvaise pratique pour deux raisons:
- Vous utilisez une méthode désapprouvée qui sera supprimé le plus probable sur les futures versions du SDK, et;
- Vous bloquez votre interface utilisateur lorsque vous chargez quelque chose à partir du réseau, tout en ne donnant aucun retour à l'utilisateur, quel qu'il soit.
Qu'est-ce que vous avez besoin est probablement NSURLRequest
pour créer votre objet de requête et NSURLConnection
pour charger réellement du réseau.
merci, bon à savoir. je n'ai pas vu que "initWithContentsOfURL" a également été obsolète exactement ce que je cherche. –