ソースを参照

[회원가입][Bug] 모바일 인증 3분 지연 후 "입력시간이 초과되었습니다." 노출

hyodong.min 7 年 前
コミット
125cef8c89

+ 30 - 27
app/src/main/java/kr/co/zumo/app/lifeplus/view/custom/auth/MobileAuthPresenter.java

@@ -599,41 +599,44 @@ public class MobileAuthPresenter implements IMobileAuthContract.Presenter {
     disposeRemainRendering();
     remainTimeDisposable =
       Observable.interval(0, 1000, TimeUnit.MILLISECONDS, AndroidSchedulers.mainThread())
-        .take(181)  // 3분
+        .take(180 + 1)  // 3분
         .subscribe(
           (Long tick) -> {
             view.renderRemainTime(Formatter.format((180 - tick) * 1000, "mm:ss"));
           }
           , Throwable::printStackTrace,
           () -> {
-            view.renderRemainTime("");
-            setEnabledConfirmView(true);
-            showTimeOverPopup(R.string.phone_identify_input_time_over);
+            view.renderRemainTime("00:00");
+//            setEnabledConfirmView(true);
+            view.setEnabledExpansionTimeButton(false);
+            view.setEnabledRequestConfirmButton(false);
+            view.doAuthorizedNumberValidationMessage(R.string.phone_identify_input_time_over);
+
           }
         );
   }
 
-  private void showTimeOverPopup(@StringRes int stringId) {
-    dialog = DialogBuilder.create(DialogID.CONFIRM)
-      .listener(new IDialogResultListener() {
-        @Override
-        public void onDialogResult(DialogBase dialog, Event event) {
-          if (event.getEventId() == Event.CONFIRM) {
-            dialog.dispose();
-          }
-          resetInputAll();
-        }
-
-        @Override
-        public void onDialogCanceled(DialogBase dialog) {
-          resetInputAll();
-        }
-      })
-      .attribute((IAttribute<ConfirmDialog>) dialog -> {
-        dialog.setText(ResourceUtil.getString(stringId));
-      })
-      .show();
-  }
+//  private void showTimeOverPopup(@StringRes int stringId) {
+//    dialog = DialogBuilder.create(DialogID.CONFIRM)
+//      .listener(new IDialogResultListener() {
+//        @Override
+//        public void onDialogResult(DialogBase dialog, Event event) {
+//          if (event.getEventId() == Event.CONFIRM) {
+//            dialog.dispose();
+//          }
+//          resetInputAll();
+//        }
+//
+//        @Override
+//        public void onDialogCanceled(DialogBase dialog) {
+//          resetInputAll();
+//        }
+//      })
+//      .attribute((IAttribute<ConfirmDialog>) dialog -> {
+//        dialog.setText(ResourceUtil.getString(stringId));
+//      })
+//      .show();
+//  }
 
   private void disposeRemainRendering() {
     if (null != remainTimeDisposable) {
@@ -663,9 +666,9 @@ public class MobileAuthPresenter implements IMobileAuthContract.Presenter {
   }
 
   private void countRetryButton() {
-    int takingNumber = 11;
+    int takingNumber = 10 + 1;
     if (numberRequestingCount > 3) {
-      takingNumber = 61;
+      takingNumber = 60 + 1;
 
       // 3회 재시도 시 인증번호 입력 칸 보이지 않게 수정;
       setEnabledConfirmView(false);