Securitatea devine o preocupare mai mare și mai mare în spațiul mobil. Ca dezvoltatori iOS, există multe lucruri pe care le putem face. Asigurăm că informațiile salvate sunt salvate în breloc, în loc de text simplu. Ne asigurăm că conținutul este criptat înainte de a fi trimis la un server de la distanță. Toate acestea se fac pentru a vă asigura că informațiile utilizatorului sunt sigure. Uneori, cu toate acestea, trebuie să adăugăm un strat suplimentar de protecție la nivelul interfeței utilizator.
Cu excepția cazului în care dispozitivul utilizatorului este înscris într-o soluție de gestionare a dispozitivelor mobile (MDM), nu puteți forța utilizatorii aplicației să configureze și să utilizeze blocarea parolei la nivelul dispozitivului. ABPadLockScreen, totuși, oferă o modalitate elegantă și rapidă de a adăuga o astfel de interfață la aplicația dvs. iOS. Permiteți-mi să vă arăt cum puteți utiliza ABPadLockScreen în aplicațiile dvs. iOS.
ABPadLockScreen este disponibil pe GitHub, dar vă recomandăm să îl instalați folosind CocoaPods. Dacă nu ați început să utilizați CocoaPods pentru gestionarea dependențelor în proiectele dvs. iOS și OS X, atunci ar trebui să începeți azi. Este cel mai bun mod de a gestiona dependențele în proiectele de cacao. Din moment ce acest tutorial nu este despre CocoaPods nu voi intra în detaliile instalării ABPadLockScreen folosind CocoaPods, dar puteți citi mult mai multe despre el pe site-ul CocoaPods sau citiți tutorialul nostru introductiv despre Tuts+.
Dacă preferați să instalați manual ABPadLockScreen, atunci și asta este bine. Descărcați sau clonați codul sursă pe GitHub și copiați fișierele din ABPadLockScreen folder în proiectul dvs. Xcode.
Biblioteca cuprinde două UIViewController
subclase. ABPadLockScreenSetupViewController
clasa este proiectat pentru a permite utilizatorului să introducă PIN-ul inițial. Acest lucru este la fel de simplu ca inițializarea unei noi instanțe a controlerului de vizualizare, transmiterea unui delegat și prezentarea modulară a controlerului de vizualizare.
- (IBAction) setPin: (id) expeditor ABPadLockScreenSetupViewController * lockScreen = [[ABPadLockScreenSetupViewController alin] initWithDelegate: self pinLength: 5]; lockScreen.modalPresentationStyle = UIModalPresentationFullScreen; lockScreen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; [self presentViewController: lockScreen animat: DA finalizare: nil];
ABPadLockScreenSetupViewControllerDelegate
protocol are o metodă necesară, care este invocată atunci când pinul este setat cu succes.
- (void) pinSet: (NSString *) pinul PadLockScreenSetupViewController: (ABPadLockScreenSetupViewController *) padLockScreenViewController;
Setarea unui PIN nu este foarte utilă decât dacă utilizatorul primește o șansă să intre în el pentru a avea acces la aplicație. Odată ce sunteți gata să vă asigurați aplicația, tot ce trebuie să faceți este să prezentați o instanță a aplicației ABPadLockScreenViewController
clasa, atribui un delegat, un pin, și prezidează vizual controlerul modal.
- (IBAction) lockApp: (id) expeditor ABPadLockScreenViewController * lockScreen = [[ABPadLockScreenViewController alin] initWithDelegate: self pin: self.pin]; [lockScreen setAllowedAttempts: 3]; lockScreen.modalPresentationStyle = UIModalPresentationFullScreen; lockScreen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; [self presentViewController: lockScreen animat: DA finalizare: nil];
Dacă setați allowedAttempts
proprietate, utilizatorul va avea doar un număr predefinit de încercări înainte ca modulul să le blocheze. Dacă allowedAttempts
nu este setat, utilizatorul poate încerca să introducă un pin de câte ori dorește.
Delegatul ABPadLockScreenViewController
instanța trebuie să se conformeze ABPadLockScreenViewControllerDelegate
protocol, care declară patru metode delegate.
- (void) unlockWasSuccessfulForPadLockScreenViewController: (ABPadLockScreenViewController *) padLockScreenViewController; - (void) unlockWasUnsuccessful: (NSString *) falsePin dupăAttemptNumber: (NSInteger) attemptNumber padLockScreenViewController: (ABPadLockScreenViewController *) padLockScreenViewController; - (void) unlockWasCancelledForPadLockScreenViewController: (ABPadLockScreenViewController *); padLockScreenViewController; - (void) tentativeExpiredForPadLockScreenViewController: (ABPadLockScreenViewController *) padLockScreenViewController;
Metodele sunt destul de explicative. Puteți obține un apel pentru o deblocare reușită, o intrare nereușită, o anulare - aceasta este permisă - și dacă încercările utilizatorului au expirat au atins încercările maxime permise.
Există mai multe moduri în care puteți personaliza interfața ecranului de blocare și comportamentul acestuia. Poti:
4
în mod implicit0
sau un număr nelimitat de încercăriÎn afară de aceasta, interfața cu utilizatorul poate fi personalizată foarte ușor. Biblioteca folosește UIAppearance
API pentru personalizarea interfeței utilizator a ecranului de blocare. Totul, din fundal, culoarea textului, culoarea de selecție și fonturile, pot fi configurate astfel încât să corespundă designului aplicației dvs..
[[ABPadLockScreenView aspect] setLabelColour: [UICcolor colorWithHexValue: @ "DB4631"]]; [[ABPadLockScreenView aspect] setBackgroundColor: [UICcolor colorWithHexValue: @ "282B35"]];
Verificați clasele de vizualizare, ABPadLockScreenView
, ABPadButton
, și ABPinSelectionView
, pentru a vedea ce sunt numele de vizualizare.
În acest sfat rapid, ne-am referit pe scurt cum să facem aplicația dvs. iOS puțin mai sigură adăugând un ecran de blocare la interfața sa de utilizator. Sper că veți găsi biblioteca utilă și ușor de folosit. Codificare fericită.