귀하의 질문에 직접 답변하지 못해 사과드립니다. 더 쉬운 옵션을 고려해보십시오. UIWebView
에 자바 스크립트를 삽입하지 않고 양식 제출을 스니핑 할 수 있어야합니다. 나는 당신의 상상력에 parseUsernameFromRequest:
, parsePasswordFromRequest:
및 saveUsername:andPassword:
의 구현을 떠 났어요
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
if ([[[request URL] absoluteString] hasPrefix:@"https://www.thirdpartysite.com/theirLoginScript"]) {
NSString *username = [self parseUsernameFromRequest:request];
NSString *password = [self parsePasswordFromRequest:request];
[self saveUsername:username andPassword:password];
}
return YES;
}
: 그냥 UIWebViewDelegate
이 같은 뭔가를 구현합니다.
(힌트 :.. 양식이 GET 방식을 사용하는 경우, 다음 매개 변수가 [[request URL] parameterString]
를 사용하여 얻을 수있는 양식이 POST 방식을 사용하는 경우, 당신은 [[NSString alloc] initWithData:[request HTTPBody] encoding:NSUTF8StringEncoding]
을 사용할 수 있습니다)
을 그건 그렇고, 당신은 안 NSUserDefaults에 비밀번호와 같은 민감한 정보를 저장하십시오. Apple은 이러한 유형의 정보를 안전하게 저장하기위한 키 체인 서비스를 제공합니다. 유감스럽게도 키 체인 서비스를 사용하는 것은 놀랍도록 복잡하므로 Buzz Andersen의 Simple iPhone Keychain Code을 확인하시기 바랍니다.
원하는 대답이 아니기 때문에 (이 글은 주석입니다.) 실제로 비밀번호를 키 체인에 저장해야합니다 ** ** NSUserDefaults가 아닙니다. 그렇지 않으면 당신은 단지 Skype가 그들의 안드로이드 애플 리케이션에 막 들어간 종류의 문제를 요구하고 있습니다. 사용자 암호를 저장하는 경우 암호를 암호화해야합니다. – lxt
@lxt 'NSUserDefaults'의 키 체인 또는 보안 관련 사항을 알지 못했기 때문에이를 지적 해 주셔서 감사합니다. 내가 안전하게 할 수 없다면 암호를 저장하지 않을 수도 있습니다. – Wylie