コード例 #1
0
 protected override void OnResume()
 {
     base.OnResume();
     if (_enc != null)
     {
         _enc.StartListening(new FingerprintAuthCallbackAdapter(this, this));
     }
 }
コード例 #2
0
        private void ChangeUnlockMode(FingerprintUnlockMode oldMode, FingerprintUnlockMode newMode)
        {
            if (oldMode == newMode)
            {
                return;
            }


            if (_samsungFingerprint != null)
            {
                _unlockMode = newMode;
                UpdateKeyboardCheckboxVisibility();

                ISharedPreferencesEditor edit = PreferenceManager.GetDefaultSharedPreferences(this).Edit();
                edit.PutString(App.Kp2a.GetDb().CurrentFingerprintModePrefKey, _unlockMode.ToString());
                edit.Commit();
                return;
            }

            if (newMode == FingerprintUnlockMode.Disabled)
            {
                _unlockMode = newMode;
                UpdateKeyboardCheckboxVisibility();

                StoreUnlockMode();
                return;
            }

            _desiredUnlockMode = newMode;
            FindViewById(Resource.Id.radio_buttons).Visibility = ViewStates.Gone;
            FindViewById(Resource.Id.show_keyboard_while_fingerprint).Visibility = ViewStates.Gone;

            FindViewById(Resource.Id.fingerprint_auth_container).Visibility = ViewStates.Visible;
            _enc = new FingerprintEncryption(new FingerprintModule(this), CurrentPreferenceKey);
            try
            {
                if (!_enc.Init())
                {
                    throw new Exception("Failed to initialize cipher");
                }
                ResetErrorTextRunnable();
                _enc.StartListening(new FingerprintAuthCallbackAdapter(this, this));
            }
            catch (Exception e)
            {
                CheckCurrentRadioButton();
                Toast.MakeText(this, e.ToString(), ToastLength.Long).Show();
                FindViewById(Resource.Id.radio_buttons).Visibility = ViewStates.Visible;
                FindViewById(Resource.Id.fingerprint_auth_container).Visibility = ViewStates.Gone;
            }
        }