diff options
author | Tony Rankin <tonyr59h@users.noreply.github.com> | 2016-09-30 01:17:20 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-30 01:17:20 -0700 |
commit | 4d4ad90a7fe7b9c89220dbe8b4395f14b6cb764c (patch) | |
tree | d5b07736f8231ee7175a8ffcc4ea46721b7d62f5 | |
parent | 4322289b481c154eeb9d790c15f2bb6c580dd47e (diff) | |
parent | 5a86fe26047500ed912ac3fc0a7238f8996c9055 (diff) | |
download | gradle-perf-android-medium-4d4ad90a7fe7b9c89220dbe8b4395f14b6cb764c.tar.gz |
Merge pull request #4567 from wordpress-mobile/issue/4539-reader-related-post-track
Issue/4539 reader related post track
5 files changed, 41 insertions, 16 deletions
diff --git a/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderPostDetailFragment.java b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderPostDetailFragment.java index ef7c9245b..da635bfe4 100644 --- a/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderPostDetailFragment.java +++ b/WordPress/src/main/java/org/wordpress/android/ui/reader/ReaderPostDetailFragment.java @@ -512,15 +512,7 @@ public class ReaderPostDetailFragment extends Fragment postView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - // if we're already viewing a related post, add it to the history stack - // so the user can back-button through the history - otherwise start a - // new detail activity for this related post - if (mIsRelatedPost) { - mPostHistory.push(new ReaderBlogIdPostId(mPost.blogId, mPost.postId)); - replacePost(relatedPost.getBlogId(), relatedPost.getPostId()); - } else { - ReaderActivityLauncher.showReaderPostDetail(getActivity(), relatedPost.getBlogId(), relatedPost.getPostId(), true); - } + showRelatedPostDetail(relatedPost.getBlogId(), relatedPost.getPostId()); } }); @@ -543,6 +535,23 @@ public class ReaderPostDetailFragment extends Fragment } /* + * user clicked a single related post - if we're already viewing a related post, add it to the + * history stack so the user can back-button through the history - otherwise start a new detail + * activity for this related post + */ + private void showRelatedPostDetail(long blogId, long postId) { + AnalyticsUtils.trackWithReaderPostDetails( + AnalyticsTracker.Stat.READER_RELATED_POST_CLICKED, blogId, postId); + + if (mIsRelatedPost) { + mPostHistory.push(new ReaderBlogIdPostId(mPost.blogId, mPost.postId)); + replacePost(blogId, postId); + } else { + ReaderActivityLauncher.showReaderPostDetail(getActivity(), blogId, postId, true); + } + } + + /* * if the fragment is maintaining a backstack of posts, navigate to the previous one */ protected boolean goBackInPostHistory() { diff --git a/WordPress/src/main/java/org/wordpress/android/util/AnalyticsUtils.java b/WordPress/src/main/java/org/wordpress/android/util/AnalyticsUtils.java index c8dd0867a..208605959 100644 --- a/WordPress/src/main/java/org/wordpress/android/util/AnalyticsUtils.java +++ b/WordPress/src/main/java/org/wordpress/android/util/AnalyticsUtils.java @@ -13,6 +13,7 @@ import org.wordpress.android.analytics.AnalyticsMetadata; import org.wordpress.android.analytics.AnalyticsTracker; import org.wordpress.android.analytics.AnalyticsTrackerMixpanel; import org.wordpress.android.analytics.AnalyticsTrackerNosara; +import org.wordpress.android.datasets.ReaderPostTable; import org.wordpress.android.models.AccountHelper; import org.wordpress.android.models.Blog; import org.wordpress.android.models.ReaderPost; @@ -24,6 +25,7 @@ import java.util.Map; import static org.wordpress.android.analytics.AnalyticsTracker.Stat.READER_ARTICLE_COMMENTED_ON; import static org.wordpress.android.analytics.AnalyticsTracker.Stat.READER_ARTICLE_LIKED; import static org.wordpress.android.analytics.AnalyticsTracker.Stat.READER_ARTICLE_OPENED; +import static org.wordpress.android.analytics.AnalyticsTracker.Stat.READER_RELATED_POST_CLICKED; import static org.wordpress.android.analytics.AnalyticsTracker.Stat.READER_SEARCH_RESULT_TAPPED; import static org.wordpress.android.analytics.AnalyticsTracker.Stat.TRAIN_TRACKS_INTERACT; import static org.wordpress.android.analytics.AnalyticsTracker.Stat.TRAIN_TRACKS_RENDER; @@ -209,12 +211,16 @@ public class AnalyticsUtils { } } - /** - * Track when a railcar item has been rendered - * - * @param post The JSON string of the railcar - * - */ + public static void trackWithReaderPostDetails(AnalyticsTracker.Stat stat, long blogId, long postId) { + trackWithReaderPostDetails(stat, ReaderPostTable.getPost(blogId, postId, true)); + } + + /** + * Track when a railcar item has been rendered + * + * @param post The JSON string of the railcar + * + */ public static void trackRailcarRender(String railcarJson) { if (TextUtils.isEmpty(railcarJson)) return; @@ -244,7 +250,8 @@ public class AnalyticsUtils { return stat == READER_ARTICLE_LIKED || stat == READER_ARTICLE_OPENED || stat == READER_SEARCH_RESULT_TAPPED - || stat == READER_ARTICLE_COMMENTED_ON; + || stat == READER_ARTICLE_COMMENTED_ON + || stat == READER_RELATED_POST_CLICKED; } /* diff --git a/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTracker.java b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTracker.java index 7608e4bd0..c160f47a6 100644 --- a/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTracker.java +++ b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTracker.java @@ -43,6 +43,7 @@ public final class AnalyticsTracker { READER_SEARCH_LOADED, READER_SEARCH_PERFORMED, READER_SEARCH_RESULT_TAPPED, + READER_RELATED_POST_CLICKED, STATS_ACCESSED, STATS_INSIGHTS_ACCESSED, STATS_PERIOD_DAYS_ACCESSED, diff --git a/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerMixpanel.java b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerMixpanel.java index 2897925af..1e1b278f8 100644 --- a/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerMixpanel.java +++ b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerMixpanel.java @@ -399,6 +399,12 @@ public class AnalyticsTrackerMixpanel extends Tracker { instructions.setSuperPropertyAndPeoplePropertyToIncrement("number_of_times_reader_search_result_tapped"); instructions.setCurrentDateForPeopleProperty("last_time_reader_search_result_tapped"); break; + case READER_RELATED_POST_CLICKED: + instructions = AnalyticsTrackerMixpanelInstructionsForStat. + mixpanelInstructionsForEventName("Reader - Related Post Clicked"); + instructions.setSuperPropertyAndPeoplePropertyToIncrement("number_of_times_reader_related_post_clicked"); + instructions.setCurrentDateForPeopleProperty("last_time_reader_related_post_clicked"); + break; case EDITOR_CREATED_POST: instructions = AnalyticsTrackerMixpanelInstructionsForStat. mixpanelInstructionsForEventName("Editor - Created Post"); diff --git a/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java index 1d829e355..76c181b9b 100644 --- a/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java +++ b/libs/analytics/WordPressAnalytics/src/main/java/org/wordpress/android/analytics/AnalyticsTrackerNosara.java @@ -296,6 +296,8 @@ public class AnalyticsTrackerNosara extends Tracker { return "reader_searchcard_clicked"; case READER_TAG_UNFOLLOWED: return "reader_reader_tag_unfollowed"; + case READER_RELATED_POST_CLICKED: + return "reader_related_post_clicked"; case EDITOR_CREATED_POST: return "editor_post_created"; case EDITOR_SAVED_DRAFT: |