ソースを参照

[문의][New] 푸시 알림 받기 변경 후 토스트 표시

hyodong.min 6 年 前
コミット
b1f8cb2049

+ 32 - 5
app/src/main/java/kr/co/zumo/app/lifeplus/view/ToastProvider.java

@@ -13,11 +13,13 @@ import android.widget.TextView;
 import android.widget.Toast;
 
 import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.List;
 
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.application.App;
 import kr.co.zumo.app.lifeplus.bean.ToastBean;
+import kr.co.zumo.app.lifeplus.util.Formatter;
 import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 
 /**
@@ -84,7 +86,7 @@ public class ToastProvider {
 
       switch (bean.getType()) {
         case ToastBean.TYPE_TWO_LINE:
-          showShare(activity, bean.getTitle(), bean.getDetail());
+          showTwoLine(activity, bean.getTitle(), bean.getDetail());
           break;
         case ToastBean.TYPE_SIMPLE:
           showSimple(activity, bean.getDetail());
@@ -106,9 +108,8 @@ public class ToastProvider {
    * @param title
    * @param detail
    */
-  public static void showShare(Activity activity, String title, String detail) {
-    new ToastProviderInternal().showShare(activity, title, detail);
-
+  public static void showTwoLine(Activity activity, String title, String detail) {
+    new ToastProviderInternal().showTwoLine(activity, title, detail);
   }
 
   /**
@@ -118,6 +119,16 @@ public class ToastProvider {
     showSimple(activity, R.string.main_location_agree_result);
   }
 
+  /**
+   * 마케팅 수신 동의
+   *
+   * @param activity
+   * @param enabled
+   */
+  public static void showMarketingToast(Activity activity, boolean enabled) {
+    new ToastProviderInternal().showMarketingToast(activity, enabled);
+  }
+
   /**
    * 1 줄짜리 기본 토스트
    *
@@ -173,7 +184,7 @@ public class ToastProvider {
      * @param title
      * @param detail
      */
-    public void showShare(Activity activity, String title, String detail) {
+    public void showTwoLine(Activity activity, String title, String detail) {
       if (ToastProvider.isResultToast()) {
         addToastBean(ToastBean.TYPE_TWO_LINE, title, detail);
         return;
@@ -253,5 +264,21 @@ public class ToastProvider {
 
       Toast.makeText(App.getInstance().getContext(), detail, Toast.LENGTH_SHORT).show();
     }
+
+    /**
+     * 마케팅 수신 동의
+     *
+     * @param activity
+     * @param enabled
+     */
+    public void showMarketingToast(Activity activity, boolean enabled) {
+      String date = Formatter.format(Calendar.getInstance().getTimeInMillis(), Formatter.DATE_FORMAT_DOT);
+
+      ToastProvider.showTwoLine(
+        activity,
+        ResourceUtil.getString(enabled ? R.string.setting_menu3_event_agree : R.string.setting_menu3_event_disagree),
+        String.format(ResourceUtil.getString(enabled ? R.string.setting_menu3_event_agree_message : R.string.setting_menu3_event_disagree_message), date)
+      );
+    }
   }
 }

+ 8 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/inquiry/InquiryWritePresenter.java

@@ -5,6 +5,7 @@ import kr.co.zumo.app.lifeplus.bean.MemberPushAgreeResultBean;
 import kr.co.zumo.app.lifeplus.model.verify.Verifier;
 import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
+import kr.co.zumo.app.lifeplus.view.ToastProvider;
 import kr.co.zumo.app.lifeplus.view.presenter.Presenter;
 import kr.co.zumo.app.lifeplus.view.screen.setting.SettingViewHolder;
 
@@ -102,6 +103,8 @@ public class InquiryWritePresenter extends Presenter<InquiryWriteModel, IInquiry
           // 푸쉬
           // 설정에 변동 사항을 알리기 위해 저장
           model.setResultPackaging(new MemberPushAgreeResultBean(model.isPushEnabled()));
+          showMarketingToast(model.isPushEnabled());
+
           // 등록 계속 진행
           registerQuestion();
         }
@@ -138,7 +141,7 @@ public class InquiryWritePresenter extends Presenter<InquiryWriteModel, IInquiry
     else {
       view.setNoticeVisible(true);
       // 비활성일 경우 활성화 시켜준다. (UI만 반영하고 '등록' 시점에 data 적용)
-      model.setUiPushEnabled(true);
+      model.setUiPushEnabled(false); // todo 기본값 true 로 (기획) 변경 필요
       view.setNoticeChecked(model.isUiPushEnabled());
     }
   }
@@ -173,6 +176,10 @@ public class InquiryWritePresenter extends Presenter<InquiryWriteModel, IInquiry
     updateCurrentLength();
   }
 
+  private void showMarketingToast(boolean enabled) {
+    ToastProvider.result().showMarketingToast(view.getActivity(), enabled);
+  }
+
   /**
    * 푸쉬 동의 선택
    *

+ 3 - 10
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/setting/SettingPresenter.java

@@ -3,8 +3,6 @@ package kr.co.zumo.app.lifeplus.view.screen.setting;
 import android.support.annotation.StringRes;
 import android.util.Log;
 
-import java.util.Calendar;
-
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.application.App;
 import kr.co.zumo.app.lifeplus.bean.MemberPushAgreeResultBean;
@@ -14,7 +12,6 @@ import kr.co.zumo.app.lifeplus.tool.Share;
 import kr.co.zumo.app.lifeplus.tool.ShareClipBoard;
 import kr.co.zumo.app.lifeplus.tool.ShareKakaoTalk;
 import kr.co.zumo.app.lifeplus.util.AppUtil;
-import kr.co.zumo.app.lifeplus.util.Formatter;
 import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.util.StringUtil;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
@@ -286,11 +283,7 @@ public class SettingPresenter extends Presenter<SettingModel, ISettingView> {
         }
         else if (index == SettingViewHolder.SWITCH_MARKETING) {
           // 마케팅
-          String date = Formatter.format(Calendar.getInstance().getTimeInMillis(), Formatter.DATE_FORMAT_DOT);
-          showCustomToast(
-            ResourceUtil.getString(bool ? R.string.setting_menu3_event_agree : R.string.setting_menu3_event_disagree),
-            String.format(ResourceUtil.getString(bool ? R.string.setting_menu3_event_agree_message : R.string.setting_menu3_event_disagree_message), date)
-          );
+          showMarketingToast(bool);
         }
         else // 위치
           //위치 동의 했을때만 동의 팝업 띄운다
@@ -381,8 +374,8 @@ public class SettingPresenter extends Presenter<SettingModel, ISettingView> {
     }
   }
 
-  private void showCustomToast(String title, String detail) {
-    ToastProvider.showShare(view.getActivity(), title, detail);
+  private void showMarketingToast(boolean enabled) {
+    ToastProvider.showMarketingToast(view.getActivity(), enabled);
   }
 
   private void showCustomToast(String detail) {