🚀 Make your Android Project pop with Remixer by Google

Rakshak R Hegde
AndroidPub
Published in
3 min readSep 10, 2017

--

Remixer

Remixer is a framework by Google to iterate quickly on UI changes by allowing you to adjust UI variables without needing to rebuild (or even restart) your app. You can adjust Numbers, Colors, Booleans, and Strings. Let’s see how…

Recently I published this huge, hugely successful Android UI library. It had quite a few moving parts to it. And, quite honestly, a single image could not justify it’s versatility. So what would one normally do? Make multiple images, of course.

(:

But when the demo app opens, it’d look sad with just one flavor shown.

:(

But being dynamic is so much more important than just static. The user should have the option to change it’s variables dynamically. For this, one would normally have to create Sliders, Toggle buttons, Color Pickers and all the fun but boring-to-create UI elements. Here comes to the rescue, ma man, ma homie, Remixer.

:D

Gradle Setup

https://github.com/rakshakhegde/stepper-indicator/blob/master/sample/build.gradle#L27

Initialization

https://github.com/rakshakhegde/stepper-indicator/blob/master/sample/src/main/java/com/rakshakhegde/stepperindicator/sample/MainActivity.java#L44

LocalStorage denotes to use SharedPreferences in the device.

Int Range — Slider

https://github.com/rakshakhegde/stepper-indicator/blob/master/sample/src/main/java/com/rakshakhegde/stepperindicator/sample/MainActivity.java#L53

Remixer generates code based on these annotations (RangeVariableMethod). Any time user changes these values via UI, your functions are called with the appropriate value. And the best part, these values are saved in SharedPreferences so that your UI looks exactly the same even on app restarts. Yay 🎉🎉

Always remember to use classes BTW. So, Float instead of float. Boolean instead of boolean… so on. In Kotlin, just add a question mark, which will make you question the very nature and fabric of space and reality 💗

Trying to emphasize the irrelevance of this segment to this article by the shrinked text size, including this line

Boolean — Toggle Button — AKA SwitchCompat

https://github.com/rakshakhegde/stepper-indicator/blob/master/sample/src/main/java/com/rakshakhegde/stepperindicator/sample/MainActivity.java#L58

Color Picker — Limited Edition

https://github.com/rakshakhegde/stepper-indicator/blob/master/sample/src/main/java/com/rakshakhegde/stepperindicator/sample/MainActivity.java#L73

Yes indeed, limited. You don’t get a Color Chooser where you can drag and choose any color like in Photoshop or MS Paint, yet. But they are indeed asking to contribute for it. I would actually build this and submit a pull request but I personally don’t really need this feature. But hey ;)

Similarly, Remixer supports more data types. So as you can see, you can use Remixer to make your library/project pop out by giving your users more control over the UI. You could brainstorm and get playful in your app’s prototype stages. Introduce this tool to your team designers and work on it. Demo different variations to your boss. Heck, you could even run A/B tests, get some feedback from your clients even.

Remixer is also built for iOS, JavaScript and something called Remote Controller. You can also configure it to Firebase Remote Controller so that you have control over your UI state remotely. That is awesome 😍

Final words, Google is really doing some awesome work to help Designers + Developers life. Which you can check out, and many other projects, at the awesome material.io.

Twitter — twitter.com/rakshakhegde

Please hit the clap button if you liked this article.

--

--

Rakshak R Hegde
AndroidPub

Android developer learning web development. Working with uncommon.is.