2010-06-29 7 views
0

최신 SDK 4.0에서 Assets 라이브러리 프레임 워크를 사용하여 자체 UIImagePickerController를 만들려고합니다. 코드는 다음과 같습니다.SDK 4.0 사용자 지정 UIImagePickerController 문제

-(void)viewDidLoad{ 

[super viewDidLoad]; 

groups = [[NSMutableArray alloc] init]; 
ALAssetsLibrary *assetsLibrary = [[ALAssetsLibrary alloc] init]; 
NSUInteger groupTypes = ALAssetsGroupAlbum; 

ALAssetsLibraryGroupsEnumerationResultsBlock listGroupBlock = ^(ALAssetsGroup *group, BOOL *stop) { 
    if (group) 
    [groups addObject:group]; 
}; 

ALAssetsLibraryAccessFailureBlock failureBlock = ^(NSError *error) { 
    NSString *errorTitle = [error localizedDescription]; 
    NSString *errorMessage = [error localizedRecoverySuggestion]; 
    NSString *errorFailureDesc = [error localizedFailureReason]; 

    NSLog(@"Error: %@, Suggestion: %@, Failure desc: %@", errorTitle, errorMessage, errorFailureDesc); 
}; 

[assetsLibrary enumerateGroupsWithTypes:groupTypes usingBlock:listGroupBlock failureBlock:failureBlock]; 
} 

여기에 문제가 있습니다. 오류가 발생하고 오류 블록이 gorups 열거 자에서 호출됩니다. 여기에 로그는 다음과 같습니다 4.0 시위 거기 SDK에 나타낸 바와 같이

Error: Global denied access

Suggestion: This setting can be changed in Preferences.

Failure desc: The user has denied all applications access to their media.

는 응용 프로그램이 사진 앨범 및 사용자해야 그랜드 액세스에 액세스하려고하는 메시지가 표시되어야합니다. 메시지가 전혀 표시되지 않고 위에서 설명한 오류가 발생합니다. 환경 설정에서 문제를 해결하기 위해 무엇이 변경되어야하는지 알려줄 수있는 사람이 있습니까?

고마워, 빅토르.

+0

설정 -> 일반 -> 재설정에서 모든 설정 재설정을 사용하여 문제를 해결할 수 있습니다. 알림 메시지가 나타납니다. 이제 주요 질문은 모든 설정을 재설정하지 않고이 설정을 변경하는 방법입니다. – Viktor

답변

2

이 정보에 액세스하려면 위치 서비스가 ON으로 조정되어야합니다! 모든 설정을 다시 설정할 필요가 없습니다. 이 경우 액세스 허용 대화 상자가 나타납니다.