我正在制作一个可以保存给定网址图片的iOS应用。 我使用了以下代码。
- (IBAction)save:(id)sender {
UIImage *image = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:photoUrl]]];
NSLog(@"%f,%f",image.size.width,image.size.height);
// Let's save the file into Document folder.
NSString *docDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSLog(@"saving jpg");
NSString *jpegFilePath = [NSString stringWithFormat:@"%@/test.jpg",docDir];
NSData *data2 = [NSData dataWithData:UIImageJPEGRepresentation(image, 1.0f)];//1.0f = 100% quality
[data2 writeToFile:jpegFilePath atomically:YES];
NSLog(@"saving image done");
}
调用此方法后,图像已成功保存。 由于我使用iPhone模拟器,我可以看到图像保存在我的本地Library文件夹中。 但是,当我从模拟器打开照片(iPhone导航应用程序)时,它不会检测到我刚刚保存的图像。 当我从Safari保存图像并打开照片应用程序时,它会正确检测图像。 但为什么它不能通过我的ios应用程序检测到我保存的图像?任何解决方案?
答案 0 :(得分:3)
为什么您认为或假设任何写入随机位置的图像应该通过照片应用程序了解?那只是胡说八道。请改用UIImageWriteToSavedPhotosAlbum()
function。