{"id":139,"date":"2014-07-17T22:33:45","date_gmt":"2014-07-17T22:33:45","guid":{"rendered":"http:\/\/jeffcardillo.com\/blog\/?p=139"},"modified":"2025-04-21T05:11:01","modified_gmt":"2025-04-21T05:11:01","slug":"android-custom-newsfeed-screen","status":"publish","type":"post","link":"http:\/\/jeffcardillo.com\/blog\/2014\/07\/17\/android-custom-newsfeed-screen\/","title":{"rendered":"Android: Custom Newsfeed Screen"},"content":{"rendered":"<p>This is a demo video I made that shows a &#8220;newsfeed&#8221; component for the bPay pilot project I worked on at a previous employer. I cannot share this code because it belongs to the owners of bPay, but I thought I&#8217;d share this video to show the concept in action.<\/p>\n<p>https:\/\/www.youtube.com\/watch?v=fXu_XlXShTs<\/p>\n<p><!--more-->The video starts by showing the option available by cycling through the possible layouts. It isn&#8217;t necessarily the case that the deployed version would use multiple layouts. The end of the video shows what it may look like in production with a specific layout chosen.<\/p>\n<h5>Features<\/h5>\n<ul>\n<li>All screen components and animations are 100% native.<\/li>\n<li>The layout of the screen is dynamic and is fetched from a &#8220;newsfeed server&#8221;.<\/li>\n<li>The tiles shown on each screen are dynamic and are fetched from a &#8220;newsfeed server&#8221;.<\/li>\n<li>The server defines the action each tile can make.<\/li>\n<li>The server defines the timing between screen and tile flips.<\/li>\n<\/ul>\n<p>This means that all of the content can be changed on the server at any time without requiring an update to the app.<\/p>\n<h5>Motivation<\/h5>\n<p>The Newsfeed was born\u00a0after being asked to make the front screen of the app a &#8220;webpage&#8221; so that the business could change content on a whim. I proposed what I designed above so that we could keep the entire app native, and allow for some pretty cool things to be done with the backend if we chose to. I was certainly inspired by Windows 8 live tiles.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is a demo video I made that shows a &#8220;newsfeed&#8221; component for the bPay pilot project I worked on at a previous employer. I cannot share this code because it belongs to the owners of bPay, but I thought I&#8217;d share this video to show the concept in action. https:\/\/www.youtube.com\/watch?v=fXu_XlXShTs<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"categories":[9,11,2],"tags":[],"class_list":["post-139","post","type-post","status-publish","format-standard","hentry","category-android","category-java","category-programming"],"_links":{"self":[{"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/posts\/139","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/comments?post=139"}],"version-history":[{"count":5,"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/posts\/139\/revisions"}],"predecessor-version":[{"id":145,"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/posts\/139\/revisions\/145"}],"wp:attachment":[{"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/media?parent=139"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/categories?post=139"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/jeffcardillo.com\/blog\/wp-json\/wp\/v2\/tags?post=139"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}