package com.basic.security.manager.helper.rm.base; import android.os.SystemClock; import android.text.TextUtils; import com.basic.security.base.BaseFragment; import com.basic.security.fragment.PersonManageFragment; import com.basic.security.manager.impl.cblite.PersonManager; import com.basic.security.utils.Constants; import com.basic.security.utils.FaceId; public class CurrentBaseSavePerson extends CurrentBaseSignUpGuidTitle { boolean shouldSleepNextTime = false; boolean reloadFaceList = true; public void savePersonAndShowFragment(BaseFragment baseFragment) { PersonManageFragment personManageFragment = ((PersonManageFragment) activity.fragment_person_manage); if (activity.needCompareFeature()) { if (shouldSleepNextTime) { shouldSleepNextTime = false; SystemClock.sleep(500); return; } BaseFragment.detectedResult = CurrentBase.detectedResult; BaseFragment.detectedResultTime = System.currentTimeMillis(); BaseFragment.selectedFacePositionIndex = currentFacePositionIndex; personManageFragment.savePerson(); shouldSleepNextTime = true; } currentFacePosition.compareFeatureResult = null; activity.refreshCurrentFragmentShowTime(); showFragmentSuccess = true; activity.currentFragment = baseFragment; activity.showFragment(baseFragment, true); personManageFragment.personChanged(PersonManager.findPersonById(personManageFragment.savedPersonId), reloadFaceList, true); } public void saveFullPersonAndShowFragment(BaseFragment baseFragment) { PersonManageFragment personManageFragment = ((PersonManageFragment) activity.fragment_person_manage); if (activity.needCompareFeature()) { if (shouldSleepNextTime) { shouldSleepNextTime = false; SystemClock.sleep(1000); return; } shouldSleepNextTime = true; BaseFragment.detectedResult = CurrentBase.detectedResult; BaseFragment.detectedResultTime = System.currentTimeMillis(); BaseFragment.selectedFacePositionIndex = currentFacePositionIndex; personManageFragment.savedPersonId = ""; String compareResultStr = FaceId.instance.compareFeatureInDb(BaseFragment.getFaceFeature(), Constants.minRecognizeScoe); String personId = compareResultStr.split(",", -1)[0]; if (TextUtils.isEmpty(personId)) { personManageFragment.savePerson(); } else { return; } } if (!TextUtils.isEmpty(personManageFragment.savedPersonId)) { currentFacePosition.compareFeatureResult = null; activity.refreshCurrentFragmentShowTime(); showFragmentSuccess = true; activity.currentFragment = baseFragment; activity.showFragment(baseFragment, true); personManageFragment.personChanged(PersonManager.findPersonById(personManageFragment.savedPersonId), true, true); } } }