PHAsset obtenir nom du fichier d'origine
Je me demande si il y a un moyen d'obtenir le nom de fichier d'origine à l'aide de PHAsset?
J'utilise le code suivant pour extraire le fichier info.
[[PHImageManager defaultManager] requestImageDataForAsset:asset options:requestOption resultHandler:^(NSData *imageData, NSString *dataUTI, UIImageOrientation orientation, NSDictionary *info) {
entity.fileUrl = [info objectForKey:@"PHImageFileURLKey"];
entity.filename = [[NSFileManager defaultManager] displayNameAtPath:[ entity.fileUrl path]];
}];
Cependant, Il ne reprend pas le nom d'origine, mais le nom dans le format "img_123"
J'ai juste vérifié officiel d'apple docs . il a été introduit une nouvelle classe PHAssetResource
et la propriété originalFilename
qui est disponible dans iOS 9+. Le problème est que j'utilise le sélecteur d'images de la bibliothèque CTAssetsPickerController qui s 'basé sur les Photos-cadre; elle renvoie choisi l'image que l' PHAsset
objet . PS. Je suis à la recherche de la solution qui est compatible avec iOS 8 :).
Merci!!!!
Vous devez vous connecter pour publier un commentaire.
Sur iOS 8, votre solution est la bonne (et uniquement) pour obtenir un nom de fichier à tous.
Sur iOS 9 cela fonctionne:
Court chemin pour obtenir de nom de fichier avec une seule ligne de code. Des actifs ont une propriété pour l'accès de nom de fichier.
Peut-être vous pouvez utiliser la méthode, elle fonctionne au-dessus de iOS8:
J'ai dû modifier mon code parce qu'il a commencé de retour non-sens des noms. Ma solution a été de choisir la ressource sur la base de l'actif mediaType et la ressource de type, mais peut-être il ya quelque chose de plus facile: