매우 이상한 문제가 발생했습니다.NSUserDefaults는 장치 및 시뮬레이터에서 작동하지만 .ipa를 통해 설치된 경우 장치에서 NULL을 반환합니다.
내 ipad 앱으로 웹 서버에 로그인 할 때 사용자 이메일과 암호화 된 키를 [[NSUserDefaults standardUserDefaults] synchronize]
으로 저장합니다. 이 방법은 성공적으로 키 값을 저장하고 시뮬레이터에서 완벽하게 작동하며 USB 코드로 장치에 앱을 설치하면 완벽하게 작동합니다.
하지만 엔터프라이즈 사용자 용 .ipa 파일을 업로드하면 앱을 다운로드하여 설치합니다. [[NSUserDefaults standardUserDefaults] synchronize]
이메일과 키를 저장하지 않고 null
을 반환합니다.
��May 17 13:31:19 xxxxxx[1590] <Warning>: post_email (null)
��May 17 13:31:19 xxxxxxx[1590] <Warning>: post_key (null)
왜 이런 일이 : .ipa 파일을 설치 ORGANIZER 장치 ON
[[NSUserDefaults standardUserDefaults] setInteger:userId forKey:@"user_id"];
[[NSUserDefaults standardUserDefaults] setObject:self.email.text forKey:@"email"];
[[NSUserDefaults standardUserDefaults] setObject:post_key forKey:@"key"];
[[NSUserDefaults standardUserDefaults] synchronize];
NSString *post_email = [[NSUserDefaults standardUserDefaults] valueForKey:@"email"];
NSString *post_key=[[NSUserDefaults standardUserDefaults] valueForKey:@"key"];
NSLog(@"post_email %@",post_email);
NSLog(@"post_key %@",post_key);
시뮬레이터에 로그온 및 장치
post_email [email protected]
post_key xxxxxxx
LOG? 이 문제를 어떻게 해결할 수 있습니까?
EDIT FOR FUTURE REFEFRENCES::::::
rmaddy의 대답은 정확한 문제가 있었다 null 값에 대한 올바른 비록 : ASIHTTPRequest begins but never ends
하고 대답했다 : https://groups.google.com/forum/?fromgroups#!topic/asihttprequest/fw7PDcD2wKI
'valueForKey :'가 아닌'objectForKey :'를 사용하십시오. – rmaddy
아마도'self.email.text' 자체는 nil입니다. – matt
바보 같은 질문 : 엔터 프라이즈 수준에서 NSUserDefaults 기능을 비활성화 할 수 있습니까? – Aaron