# Streaming Android applications via the browser

DevFeed: [Streaming Android applications via the browser](<https://devfeed.tech/articles/streaming-android-applications-via-the-browser-20009.md>)

Original publisher: [Read original article](<http://engineering.hackerearth.com/2017/04/03/streaming-android-apps-via-the-browser/>)

Published: 2017-04-03T00:00:00Z

Content type: article

Language: en

Sources: [HackerEarth](<https://devfeed.tech/sources/hackerearth.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [APK](<https://devfeed.tech/topics/apk.md>), [Streaming](<https://devfeed.tech/topics/streaming.md>), [Emulator](<https://devfeed.tech/topics/emulator.md>), [browser](<https://devfeed.tech/topics/browser.md>), [Front end](<https://devfeed.tech/topics/frontend.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [apk](<https://devfeed.tech/tags/apk.md>), [applications](<https://devfeed.tech/tags/applications.md>), [benchmarks](<https://devfeed.tech/tags/benchmarks.md>), [browser](<https://devfeed.tech/tags/browser.md>), [bugs](<https://devfeed.tech/tags/bugs.md>), [emulator](<https://devfeed.tech/tags/emulator.md>), [integration](<https://devfeed.tech/tags/integration.md>), [performance](<https://devfeed.tech/tags/performance.md>), [programming](<https://devfeed.tech/tags/programming.md>), [streaming](<https://devfeed.tech/tags/streaming.md>), [user-experience](<https://devfeed.tech/tags/user-experience.md>)

## AI overview

This HackerEarth engineering article describes the difficulties of evaluating Android APK submissions manually during hiring challenges. Recruiters had to download and install each APK on a connected Android device or emulator, interact with the application, and record scores for compliance, bugs, performance, appearance, and user experience. The article introduces objectives for a browser-based system that provisions emulators, streams application interaction through the browser, automates emulator operations, and integrates with the recruiter dashboard.

## Source excerpt

HackerEarth prides itself in its scalable & automated evaluation system. What was initially designed keeping standard programming problems in mind (check this post out), gradually evolved to accommodate a plethora of problem types across various tech domains. Currently supported Problem Types Programming Frontend Objective Android Subjective File based Multiplayer Approximate Golf Machine Learning SQL Regex File eval Map Reduce Note: Not all of the problem types are accessible by end users publicly. Some are reserved for HackerEarth's Recruit product. While most of them have their own evaluation stack and are automated in the complete sense of the word, evaluating submissions for some of these problem types requires partial manual intervention. Evaluation of Android submissions for instance, is not automated. Why though? An android submission is basically an apk. Given a requirement, the user has the freedom of designing and implementing an app in whatever way he/she deems fit. Given the nature of such submissions, it would be ill conceived to design an evaluation system in a one-size-fits-all manner. Hence the need for manual intervention. Evaluating Android Submissions Each submission is rated based on the following parameters: Requirement compliance Bugs Performance benchmarks Look and feel of the application User experience For a given hiring challenge, a dashboard containing all the submissions along with the candidate details is provided to the recruiter. The recruiter then follows each of these steps: Download a candidate's apk onto his/her local machine Install the apk onto a connected android device or emulator Test and interact with the app on a device or emulator Update score for the candidate in the dashboard Straight off, you can identify serious cons to this approach. Android Studio should be set up on your local machine(for a non-technical guy, this can be a daunting task in itself) Manually install & uninstall apps from an emulator/device Error-prone