2010-11-30 3 views
5

기존 응용 프로그램에 암호를 통합하고 싶습니다. 누구든지 좋은 자습서를 알고 있거나 내 검색에 빌려주겠습니까? 거기에 표준 애플 튜토리얼 하나를 통합 할 수 있습니까? 나는 하나를 찾을 수 없었지만 didFinishLaunching & 사임 방법을 마우스 오른쪽 단추로 누르는 것만 큼 간단 할 것이라고 상상할 수 있습니까? 열쇠 고리는 그것을 보관하기에 좋은 장소입니까? 다시 말하지만, 특히 입증 된 보안 방법이있는 경우에는이 문제를 해결하기가 어렵습니다. 여기에 내가 찾을 수있는 좋은 튜토리얼이 하나 있지만 뷰 또는 여러 호출 점이 포함되어 있지 않습니다. http://gorgando.com/blog/topics/technology/iphone_development/simple-iphone-tutorial-password-management-using-the-keychain-by-using-sfhfkeychainutilsiPhone Passcode 통합

고마워요!

답변

2

나는이 겪었지만, 내가 API 또는 사용할 수있는 뭔가 어떤 링크가 없지만, 몇 가지 조언 : 당신의 becomeActive 방법에서 암호보기를 호출 해 멀티 태스킹 가진 -

앱 위임, 백그라운드에서 돌아 왔을 때 앱이 패스 코드를 물을 수있는 방식. ,

- (void)applicationDidEnterBackground:(UIApplication *)application 

- (void)applicationDidBecomeActive:(UIApplication *)application 

첫 번째는 배경을 가기 전에라고하며,이 후보다 배경에 가기 전에 코드를 사용하여보기를 제시 호출하는 것이 좋습니다 :

은 기본적으로 두 가지 방법에 드 패스 코드를 호출해야 이 코드를 호출하면 코드 잠금보기가 표시되기 전에 백그라운드로 이동하기 전에 앱을 보았을 것입니다.

두 번째 코드는 다소 명백하지만 두 번째 코드가 두 번째로 표시되지 않도록 제어해야합니다. 두 번째 방법은 배경에서 복귀 할 때도 호출되기 때문입니다.

- 암호와 관련이 있으며, 약간의 암호화가있는 plist와 같은 사용자 지정 구성 파일에 저장할 수 있습니다.

-Related와 같이, 이러한 종류의 동작을 처리하는 일부 프로토콜로 사용자 고유의 viewController를 만들 수 있습니다. 아무 것도 아니야. 이 도움

호프

+0

사용자가 로그인해야하는 모든 경우를 처리하기 위해 델리게이트에서 재정의해야 할 기능을 정확히 말해 줄 수 있습니까? – Josh

+0

물론 .. 게시물을 편집했습니다 ...이 도움이되기를 바랍니다 = D – Omer

+0

@Omer. "코드 잠금 두 번 제시"방지하는 방법에 대한 아이디어? 나는 뭔가를 해킹했지만 확실히 깨끗하지는 않습니다. 프로토콜을 사용하는 것이 훨씬 더 깨끗한 방법처럼 보입니다.그것에 대한 제안이 있습니까? – okysabeni

1

NSUserDefaults 바이 standardUserDefaults * = [NSUserDefaults standardUserDefaults];

if (standardUserDefaults) 
{ 
    [standardUserDefaults setObject:passCodeTextField.text forKey:@"lock"]; 
    [standardUserDefaults synchronize]; 
} 

저장 스키마가 있으면 특정 작업에 넣으십시오. 기타 응용 프로그램을 처음 실행할 때 설정하십시오. 다른 조건이 다음 지금

이 암호를

NSUserDefaults에 액세스 할 수 있습니다 위의 코드를 사용하는 경우 AppDelegate에의

검사가 적절한 넣어 * standardUserDefaults = [NSUserDefaults standardUserDefaults] if (standardUserDefaults) self.passCodeString = [standardUserDefaults objectForKey : @ "lock"];

그리고 이것을 패스 코드로 볼 수 있습니다 (패스 코드 용).

+2

'standardUserDefaults'가 nil이 아닌지 (if 블록으로) 확인하는 것은 정말로 필요하지 않습니다. 그것이 'nil'이라면 메시지를 보낼 때 아무런 반응이 없지만, [NSUserDefaults standardUserDefaults]가'nil'을 반환 할 수 있는지 여부는 확실하지 않습니다. – dreamlax

+1

나는 C++, C#, 자바 세계에서 온 사람들의 좋은 습관 일 뿐이라고 생각하지 않는다. –