ソースを参照

[Crashlytics] 비정상 종료 수정

yeongyun 6 年 前
コミット
12831fefbe

+ 2 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/category/CategoryMainPresenter.java

@@ -181,15 +181,14 @@ public abstract class CategoryMainPresenter<M extends CategoryMainModel, V exten
       case Event.CONTENTS:
         if(model != null && model.getContents() != null && model.getContents().size() > event.getIndex()) {
           googleAnalyticsHelper.sendGA(GoogleAnalyticsHelper.Category.CATE_ + getAnalyticsScreenName(), String.valueOf(event.getIndex()), model.getContents().get(event.getIndex()).getTitle());
+          linkContents(R.string.fa_type_list, event.getIndex(), model.getContents().get(event.getIndex()));
         }
-
-        linkContents(R.string.fa_type_list, event.getIndex(), model.getContents().get(event.getIndex()));
         break;
       case Event.BANNER:
         if(model != null && model.getBannerBeans() != null && model.getBannerBeans().size() > event.getIndex()) {
           googleAnalyticsHelper.sendGA(GoogleAnalyticsHelper.Category.BANNER, GoogleAnalyticsHelper.Action.CLICK, model.getBannerBeans().get(event.getIndex()).getTitle());
+          linkContents(R.string.fa_type_banner, event.getIndex(), model.getBannerBeans().get(event.getIndex()));
         }
-        linkContents(R.string.fa_type_banner, event.getIndex(), model.getBannerBeans().get(event.getIndex()));
         break;
       case Event.EXPOSURE_BANNER:
         googleAnalyticsHelper.sendGA(GoogleAnalyticsHelper.Category.BANNER, GoogleAnalyticsHelper.Action.EXPOSURE, getAnalyticsScreenName());

+ 3 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsFragment.java

@@ -258,7 +258,9 @@ public class ContentsFragment extends FragmentBase<ContentsPresenter> implements
 
     };
     scrollEventListener = new IndexScrollListener(layoutManager, index -> {
-      presenter.onChangedPageIndex(index);
+      if(presenter != null) {
+        presenter.onChangedPageIndex(index);
+      }
     });
     recyclerViewContentsDetail.addOnScrollListener(scrollEventListener);
 

+ 3 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsPresenter.java

@@ -186,7 +186,9 @@ public class ContentsPresenter extends ContentsBasePresenter<ContentsModel, ICon
     showWaiter(10);
 
     LifeplusContentsBean bean = model.getContentsBean();
-    firebaseAnalyticsHelper.logScreen(R.string.fa_screen_contents, ResourceUtil.getString(R.string.fa_id_string, bean.getItemNo(), bean.getTitleWithTrim()));
+    if(bean != null && firebaseAnalyticsHelper != null) {
+      firebaseAnalyticsHelper.logScreen(R.string.fa_screen_contents, ResourceUtil.getString(R.string.fa_id_string, bean.getItemNo(), bean.getTitleWithTrim()));
+    }
 
     this.model.loadDetail();
   }

+ 33 - 31
app/src/main/java/kr/co/zumo/app/lifeplus/view/widget/LifeplusWidgetProvider.java

@@ -41,44 +41,46 @@ public class LifeplusWidgetProvider extends AppWidgetProvider {
   private void render(Context context, AppWidgetManager appWidgetManager, int appWidgetId, LifeplusContentsBean contentsBean) {
     // Construct the RemoteViews object
     RemoteViews views = getRemoteViews(context);
+    if(contentsBean != null) {
 
-    views.setTextViewText(R.id.text_view_title, contentsBean.getTitleWithTrim());
-    views.setTextViewText(R.id.text_view_sub_title, contentsBean.getSubTitleWithTrim());
+      views.setTextViewText(R.id.text_view_title, contentsBean.getTitleWithTrim());
+      views.setTextViewText(R.id.text_view_sub_title, contentsBean.getSubTitleWithTrim());
 
-    // contents link
-    Intent linkIntent = new Intent(context, ContentsGateActivity.class);
-    linkIntent.setData(new Uri.Builder()
-      .appendQueryParameter(Share.CONTENTS_ITEM_NO, contentsBean.getItemNo())
-      .appendQueryParameter(Share.CONTENTS_ITEM_PAGE, "0")
-      .build());
-    views.setOnClickPendingIntent(R.id.image_view_background, PendingIntent.getActivity(context, 0, linkIntent, 0));
+      // contents link
+      Intent linkIntent = new Intent(context, ContentsGateActivity.class);
+      linkIntent.setData(new Uri.Builder()
+              .appendQueryParameter(Share.CONTENTS_ITEM_NO, contentsBean.getItemNo())
+              .appendQueryParameter(Share.CONTENTS_ITEM_PAGE, "0")
+              .build());
+      views.setOnClickPendingIntent(R.id.image_view_background, PendingIntent.getActivity(context, 0, linkIntent, 0));
 
-    // picasso
+      // picasso
 //    Transformation transformation = new RoundedTransformationBuilder().scaleType(ImageView.ScaleType.FIT_XY).cornerRadiusDp(8).build();
 //    Picasso.get().load(contentsBean.getImageUrl()).resize(100, 100).transform(transformation).into(views, R.id.image_view_background, new int[]{appWidgetId});
 
-    // glide
-    AppWidgetTarget backgroundImage = new AppWidgetTarget(context, R.id.image_view_background, views, appWidgetId);
-    String url = contentsBean.getImageUrl();
-    try {
-      GlideApp.with(context.getApplicationContext()).clear(backgroundImage);
-      GlideApp.with(context.getApplicationContext())
-        .asBitmap()
-        .skipMemoryCache(true)
-        .load(url)
-        .override(400, 400)
-        .apply(new RequestOptions().centerCrop())
-        .into(backgroundImage);
-    } catch (Exception e) {
-      //e.printStackTrace();
-      Log.e("APP#  LifeplusWidgetProvider | render", "Log.getStackTraceString(e) |" + Log.getStackTraceString(e));
-    }
-
-
-    //appWidgetManager.getAppWidgetIds(new ComponentName(context, LifeplusWidgetProvider.class));
-    Log.w("APP# LifeplusWidgetProvider | render", "|" + "----------------------------------- id: " + appWidgetId);
-    Log.w("APP# LifeplusWidgetProvider | render", "|" + "contentsBean: " + contentsBean.toJson());
+      // glide
+      AppWidgetTarget backgroundImage = new AppWidgetTarget(context, R.id.image_view_background, views, appWidgetId);
+      String url = contentsBean.getImageUrl();
+      try {
+        GlideApp.with(context.getApplicationContext()).clear(backgroundImage);
+        GlideApp.with(context.getApplicationContext())
+                .asBitmap()
+                .skipMemoryCache(true)
+                .load(url)
+                .override(400, 400)
+                .apply(new RequestOptions().centerCrop())
+                .into(backgroundImage);
+      } catch (Exception e) {
+        //e.printStackTrace();
+        Log.e("APP#  LifeplusWidgetProvider | render", "Log.getStackTraceString(e) |" + Log.getStackTraceString(e));
+      }
+
+
+      //appWidgetManager.getAppWidgetIds(new ComponentName(context, LifeplusWidgetProvider.class));
+      Log.w("APP# LifeplusWidgetProvider | render", "|" + "----------------------------------- id: " + appWidgetId);
+      Log.w("APP# LifeplusWidgetProvider | render", "|" + "contentsBean: " + contentsBean.toJson());
 
+    }
     attachEvent(context, views, appWidgetManager, appWidgetId);
 
   }