2012-08-28 3 views
0

다른 애플리케이션 (예 : GDrive, iBooks 등)을 열고 싶습니다. 내 응용 프로그램에서 UTI를 사용하여.내 앱에서 내 앱에서 다른 앱을 여는 방법

나는이 응용 프로그램에서 다른 응용 프로그램으로 PDF 파일을 내보내는 데 사용 된 this site의 다음 코드를 사용해 보았습니다.

NSString * filePath = [[NSBundle mainBundle] pathForResource:nil ofType:@"pdf"];  
documentController = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath:filePath]]; 
documentController.delegate = self; 
[documentController retain]; 
documentController.UTI = @"com.adobe.pdf"; 
[documentController presentOpenInMenuFromRect:CGRectZero inView:Parent animated:YES]; 

위의 코드는 나에게 내 응용 프로그램에서 내 장치에서 사용할 수있는 응용 프로그램 (G 드라이브, 아이 북스 등)의 목록을 제공하지 않습니다,하지만 이러한 응용 프로그램 중 하나를 클릭하면, 그것은 하나의 PDF를 수출 내 FilePath를 "NIL"로 사용 했음에도 불구하고 선택한 응용 프로그램에 응용 프로그램을 설치해야합니다.

내가 원하는 것은 응용 프로그램에서 다른 응용 프로그램으로 PDF 파일을 보내지 않고 응용 프로그램에서 내 장치의 사용 가능한 다른 응용 프로그램 (GDrive, iBooks 등)을 열 수있게하려는 것입니다.

답변

1

사용자 정의 URL을 사용하십시오. 구현시 샘플 코드는 link을 참조하십시오.

1

URL 스키마는 사용할 수있는 방법이지만 모든 앱에 적용되는 것은 아닙니다. 전체 목록은 here입니다 (이 대답 시점까지는 웹 사이트에 어떤 종류의 오류가있어서 열리지 않습니다).

페이스 북 앱을 열도록 사용하는 방법에 대한 예 :

NSURL *url = [NSURL URLWithString:@"fb://"]; 

if ([[UIApplication sharedApplication] canOpenURL:url]) 
{ 
    [[UIApplication sharedApplication] openURL:url]; 
} // else -> i.e. open Safari to Facebook's page or show an error message 
0

모든 APP는 식별자로 구성 "com.companyName.appName"(예 형태입니다 : "com.adobe. appname "). 특정 앱에서 열려면

[[UIApplication sharedApplication] openURL : [NSURL URLWithString : @ "com.adobe.appname"]]];

관련 문제