2018年3月6日
app共享属性打开后,用itunes打开,会在文件共享菜单下面显示。
一.实现:ios端app由于采用的是沙盒机制,默认是不支持访问程序外的文件(联系方式和相册除外,这些访问应该是苹果底层框架实现的)
1.如果需要实现文件共享,app端要开启itunes文件共享配置2.相关测样代码
//读取沙盒文件
- (IBAction)readFileInDocumentDir:(id)sender {
NSString *docsDir = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
NSDirectoryEnumerator *dirEnum = [[NSFileManager defaultManager] enumeratorAtPath:docsDir];
NSString *fileName;
while (fileName = [dirEnum nextObject]) {
NSLog(@"fielName : %@" , fileName);
NSLog(@"filePath : %@" , [docsDir stringByAppendingPathComponent:fileName]) ;
}
}
//沙盒路径下创建文件,便于从itunes软件里面导出
- (IBAction)createImgFileToDoucument:(id)sender {
NSString *docsDir = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
NSString *imageFilePath = [docsDir stringByAppendingPathComponent:@"testImage.png"] ;
UIImage *image = [self generateImage];
[[NSFileManager defaultManager] createFileAtPath:imageFilePath contents:UIImagePNGRepresentation(image) attributes:nil] ;
}
// 创建简单图片
- (UIImage*)generateImage{
UIGraphicsBeginImageContextWithOptions(CGSizeMake(320, 200), NO, 0.0) ;
CGContextRef ctx = UIGraphicsGetCurrentContext() ;
CGRect imageRect = CGRectMake(0.0, 0.0, 320, 200) ;
[[UIColor redColor] setFill] ;
CGContextFillRect(ctx, imageRect) ;
UIImage *image = UIGraphicsGetImageFromCurrentImageContext() ;
UIGraphicsEndImageContext() ;
return image ;
}
二、验证
1.第一步,用itunes打开,拖入一张图片到该app
2.点击app内读取文件按钮,看是否有日志输出
3.点击创建文件后,在用itunes工具将刚刚创建的文件拖出即可。
如果您发现本文对你有所帮助,如果您认为其他人也可能受益,请把它分享出去。