AH Samsung Galaxy S5 -16 LOGO

Samsung Devices Might Face Problems Rendering Apps With Material Design

November 23, 2014 - Written By Yash Garg

Google’s Android v5.0 Lollipop arguably brought about the most significant, noticeable change in cosmetics. Instead of the rather dull, uninspiring v4 Jelly Bean and KitKat layout, Lollipop sports a much more vibrant tone. However, this exact tone is something that some of the most popular devices made by Samsung might not support.

While a lot of phones are yet to get the Lollipop upgrade, 3rd party developers and Google itself are stepping their game up to give users a taste of Lollipop despite their phones/tablets running older versions of Android. While most devices face no real problems rendering the new design, Samsung’s own might not completely be able to render the apps and thus cause FC’s and crashes. The problem is attributed to the usage of older versions of the Android support library by Samsung, as decreed by Koushik ‘Koush’ Dutta. He adds, “Leave it to Samsung to Samsung it up. Various Samsung phones are including older versions of the android support library in the framework or classpath. If you use the new material support library, you’ll see this crash on those Samsung devices: java.lang.NoClassDefFoundError: android.support.v7.internal.view.menu.MenuBuilder“. Being the bright mind that he is, Dutta even presents a workaround. “To fix this, you must rename that class. Easiest way to do that is by running proguard. If you don’t want to obfuscate, here’s a 1 liner to rename just the offending classes: “-keep class !android.support.v7.internal.view.menu.**,** {*;}”

Now, that sounds far from the most user-friendly method to deal with the problem; only the most tech-savvy users might know what that means, forget implementing that on their own.

Samsung is expected to roll out Android v5.0 Lollipop for an array of its smartphones. The higher-end ones, including the likes of the Galaxy S5, are expected to get the update this year, while the more affordable ones might have to wait a bit to get running on Lollipop. While there’s no official reason explaining the use of outdated libraries, one does ponder if it is Samsung’s TouchWiz implementation that leads to such inconsistencies.