For years Apple had the user interface guidelines while the Android world had little guidance on how applications should look and feel. Starting with Lollipop Google has created standards that new applications should adhere to.
- [Instructor] Recently my sister-in-law came to visit and stayed with us for a few months. While she was here she did some great things to reorganize some of our rooms. This may seem nice on the surface we get free house cleaning. But what it also resulted in is I couldn't find anything. Someone kept moving our cheese. For many years, Android applications were like this. Every application was different. Behaved differently it was created using different standards. Users of Android devices were in many cases learning how to use applications on an application by application basis because every development team was designing their application in order to operate in ways that they thought were most efficient much like my sister-in-law rearranged our kitchen in a way she thought was most efficient.
Meanwhile, we just wanted to know where our cheese was at. Android is an open source operating system that has not always had complete continuity. This problem was not only noticed by user experience wonks but by developers who used the technology. In 2011 there was no typical Android application. They all worked and operated in different ways. One of the key concepts of design is consistency so in this respect the Android ecosystem didn't have a way to support good design. Google came to the conclusion that having guidelines at all will create a situation that is more likely to result in a consistent look and feel than one without.
Community expectations are also a key driver in why Google created the material design standards. People expect their apps on a device to work the same. Before material design, there was no consensus on how these applications should look and work. The closest proxy that was available was to look at how Google's own applications worked but even they were inconsistent. Meeting use expectations behind all apps working the same within the Android ecosystem was a clear part of the reason why Google created material design.
When Google decided to make the material design guidelines they wanted one such that it would work on the entire ecosystem, not just Android applications introducing it with version 5.0, or Lollipop that is to say that the material design guidelines are flexible enough to work on Chrome OS and with web applications. Since these are not all touch-centric platforms material design considers keyboard, mouse and touch input methods all to have first-class support. However the platforms underlying Android Chrome OS and web applications are very different.
As such, how you implement material design is different depending on platform even if the end effect is similar. As a result of all these factors Google created material design. My recommendation is that every new Android application that is appropriate for material design should use it. For the most part, that includes all non-game applications. With material design, Google created a standard to promote a unified experience across platforms. Application developers like us have a pattern that we can follow to create applications that are more likely to delight the people that use them.
- Breaking down a material design layout
- Adding AppCompat
- Adding icons and floating action buttons
- Animating the appearance
- Creating a RecyclerView
- Creating a ViewHolder
- Modifying the adapter
- Adding CardView
- Adding transition animations
- Adding a Snackbar
- Working with CoordinatorLayout