2014-07-11 1 views
1

무엇이 잘못 되었나요? Calendar.app의 Info.plist를 배열로 읽으려고했지만 배열이 없습니다. 내 코드는 다음과 같습니다.내 응용 프로그램 외부의 번들에서 plist를 읽을 수 없습니다.

NSBundle* xyzbundle = [NSBundle bundleWithPath:@"/Applications/Calendar.app/Contents"]; 
    // Path to the plist 
    NSString *path = [xyzbundle pathForResource: 
         @"Info" ofType:@"plist"]; 

    // Build the array from the plist 
    NSMutableArray *array2 = [[NSMutableArray alloc] initWithContentsOfFile:path]; 

    // Show the string values 
    for (NSString *str in array2) 
     NSLog(@"--%@", str); 

감사합니다.

+0

앱이 캘린더와 다른 샌드 박스에 저장되므로 보안상의 이유로 호출이 실패 할 수 있습니다. – Drux

+0

입력 해 주셔서 감사합니다. – georgeOfTheJungle

답변

0

할 수 없습니다. iOS 커널은 각 응용 프로그램에 대한 샌드 박스 환경을 만듭니다. 모든 응용 프로그램은 다른 응용 프로그램의 데이터를 읽거나 쓸 수 없습니다. 몇 가지 가능한 예외가 있지만 일반적으로 할 수 없습니다.

+0

입력 해 주셔서 감사합니다. 그러나 관심사 인 것처럼 예외는 무엇입니까? – georgeOfTheJungle

+0

응용 프로그램이 documentInteractionController를 사용하여 판독기 응용 프로그램 (.doc, .pptx etc 파일을 읽음)을 만들고 다른 응용 프로그램이 동일한 파일을 열길 원하면이 문서를 열 수있는 응용 프로그램이 나열됩니다. 사용자가 앱을 선택하여 해당 파일을 읽으면 해당 파일이 애플리케이션에 삽입되어 읽습니다. – Apurv

관련 문제