Objective-c - La mémoire est trop volumineuse lors de la conversion d'une UIimage en NSData
巴扎黑
巴扎黑 2017-05-02 09:28:12
0
1
575

Si vous transférez vers NSData sans endommager la qualité de l'image, si l'image est très grande, si elle est dans le thread principal, la mémoire augmentera et l'interface utilisateur sera bloquée. Si elle est dans le sous-thread, le. L'interface utilisateur ne sera pas bloquée. Mais la mémoire sera également très grande. Comment le résoudre ? (Remarque : l'image de test, la longueur des données transférées est d'environ 20 M)

.
巴扎黑
巴扎黑

répondre à tous(1)
phpcn_u1582

Incapable de résoudre, la conversion en NSData est similaire à une opération de décompression et ne peut pas réduire l'utilisation de la mémoire.

Si vous devez l'envoyer au serveur, il est recommandé d'utiliser la méthode indiquée dans la figure ci-dessous.

NSMutableURLRequest *request = [[AFHTTPRequestSerializer serializer] multipartFormRequestWithMethod:@"POST" URLString:@"http://example.com/upload" parameters:nil constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
        [formData appendPartWithFileURL:[NSURL fileURLWithPath:@"file://path/to/image.jpg"] name:@"file" fileName:@"filename.jpg" mimeType:@"image/jpeg" error:nil];
    } error:nil];
    
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal