Hike Messenger gains speed and simplicity with Android Architecture Components
Stay organized with collections
Save and categorize content based on your preferences.

Launched in 2012, Hike is building products with the aim of simplifying the
internet to bring India online. Hike combines chat, messaging, feeds,
and integrations with third-party transportation and payment apps.
It developed these features very rapidly and at different points in
time, resulting in what the company called "significant technical and
architectural debt." Because this debt was becoming a bottleneck to
stability, maintainability and performance, the company wanted to simplify
its code quickly.
What they did
Hike turned to Android Architecture Components, which
became "our Swiss army knife to tackle all of these challenges" says
CTO Vishwanath Ramarao. It began using
ViewModel, which allows data to
survive configuration changes (such as screen rotations);
LiveData, an
observable data-holder class; and the
Room persistence library.
"We're a modern, reactive app, and Room and LiveData fit really
well with our forward-design principles" Ramarao adds.
Hike is also evaluating the Paging Library,
which makes it easier for an app gradually to load information as needed from a
data source, without overloading the device or waiting too long for a big
database query.
"We were aware of Architecture Components in general and wanted to learn more"
Ramarao says. "But what started as an exploration of the Android-ecosystem
best practices became an important tool to tackle our technical and
architectural debt. It ultimately became a way of modernizing our
architecture and development practice".
Results
Thanks to Architecture Components, Hike significantly reduced the total
lines of code in their app, while also making that code more readable
and maintainable. Android Architecture Components also helped them to
raise their crash-free user ratings to well beyond 99 percent,
something they’d struggled to accomplish in the past.
Get started
Android Architecture Components is open to all developers as part of
Android Jetpack. Get
started with Android Architecture Components.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2018-05-03 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2018-05-03 UTC."],[],[],null,["# Hike Messenger gains speed and simplicity with Android Architecture Components\n\nLaunched in 2012, Hike is building products with the aim of simplifying the\ninternet to bring India online. Hike combines chat, messaging, feeds,\nand integrations with third-party transportation and payment apps.\nIt developed these features very rapidly and at different points in\ntime, resulting in what the company called \"significant technical and\narchitectural debt.\" Because this debt was becoming a bottleneck to\nstability, maintainability and performance, the company wanted to simplify\nits code quickly.\n\nWhat they did\n-------------\n\nHike turned to [Android Architecture Components](/jetpack/arch), which\nbecame \"our Swiss army knife to tackle all of these challenges\" says\nCTO Vishwanath Ramarao. It began using\n[ViewModel](/topic/libraries/architecture/viewmodel), which allows data to\nsurvive configuration changes (such as screen rotations);\n[LiveData](/topic/libraries/architecture/livedata), an\nobservable data-holder class; and the\n[Room](/topic/libraries/architecture/room) persistence library.\n\"We're a modern, reactive app, and Room and LiveData fit really\nwell with our forward-design principles\" Ramarao adds.\n\nHike is also evaluating the [Paging Library](/topic/libraries/paging),\nwhich makes it easier for an app gradually to load information as needed from a\ndata source, without overloading the device or waiting too long for a big\ndatabase query.\n\u003e \"We were aware of Architecture Components in general and wanted to learn more\"\n\u003e Ramarao says. \"But what started as an exploration of the Android-ecosystem\n\u003e best practices became an important tool to tackle our technical and\n\u003e architectural debt. It ultimately became a way of modernizing our\n\u003e architecture and development practice\".\n\nResults\n-------\n\nThanks to Architecture Components, Hike significantly reduced the total\nlines of code in their app, while also making that code more readable\nand maintainable. Android Architecture Components also helped them to\nraise their crash-free user ratings to well beyond 99 percent,\nsomething they'd struggled to accomplish in the past.\n\nGet started\n-----------\n\nAndroid Architecture Components is open to all developers as part of\n[Android Jetpack](/jetpack). [Get\nstarted with Android Architecture Components](/jetpack/arch)."]]