티스토리 뷰
사용 목적 : 특정 확장자를 다른 앱에서 실행 시킬 때 필요.
사용 기회 : 안드로이드는 폴더를 탐색기를 통해 공유할 수 있지만 iOS의 경우 그렇지 못하니 별도의 설정이 필요하다. 하지만 이점을 iOS에서 제공해준다는점~~~ 기능이 있다는걸 알았지만 처음 써보게 되었다.
//.h
@property (nonatomic, strong) UIDocumentInteractionController *documentInteractionController;
//.m
//파일 실행을 위한 준비작업.
//서버에 있는 경로를 바로 연결시켜주면 "한컴뷰어"의 경우 파일이 열리지 않아 별도로 해당 앱의 도큐먼트에 저장한 후 파일경로를 넘겨줄 경우 한글뷰어에서 해당 파일을 볼 수 있다.
NSData *tempData = [NSData dataWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://%@",@"파일경로"]]];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSAllDomainsMask, YES);
NSString *documentDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@",fileName]];
BOOL isWrite = [tempData writeToFile:filePath atomically:YES];
NSString *tempFilePath;
if (isWrite) {
tempFilePath = [documentDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@", fileName]];
}
NSURL *resultURL = [NSURL fileURLWithPath: tempFilePath];
self.documentInteractionController = [[UIDocumentInteractionController alloc] init];
self.documentInteractionController = [UIDocumentInteractionController interactionControllerWithURL: resultURL];
self.documentInteractionController.delegate = self;
[self.documentInteractionController presentOptionsMenuFromRect:CGRectZero inView:self.view animated:YES];
//delegate
특정앱에서만 실행 시켜야 할 경우 controller.UTI 속성을 비교하여 해당앱 설치 페이지로 넘기면 될 것 같다.
리턴값에 따라 기본속성인 복사하기, 프린트, 카메라롤 저장 등 보이게 할지 여부를 체크할 수 있다.
특정 앱이 없을 경우에는 controller.UTI 값이 "public.data"으로 넘어오는듯하다.
- (BOOL)documentInteractionController:(UIDocumentInteractionController *)controller canPerformAction:(SEL)action
< documentInteractionController return NO>
< documentInteractionController return YES>
'iOS > 자료정리' 카테고리의 다른 글
xCode6 버전에서 아이폰6, 6+ 자동 확대되어 보이게 하기. (0) | 2014.11.06 |
---|---|
iOS 앱 내부에 저장된 파일 확인하기. (0) | 2014.06.11 |
[iPhone]앱 업데이트 소요 시간, IAP 가격 변경 시 적용 시간 (2014.04.30 일 기준) (0) | 2014.04.30 |
[iPhone]Tost 흉내내기, 간단 팝업 만들기, 테두리, 라운드처리, 셰도우 주기. (0) | 2014.04.03 |
[iPhone] UIView 모서리 둥글게 만들기, 그림자 주기(shadow), 이미지 없이 팝업 효과 내기. Tost 효과 내기 (0) | 2014.04.03 |