Hacking through the Android OS code
Submitted by Arnav Gupta (@championswimmer) on Friday, 10 October 2014
This workshop would be to give hands-on demonstration on how to get and build the Android OS Source Code, and build it (for a device like Nexus).
Then we will look at various parts of the source that can be modified to change the way the Android Operating System looks and works.
People who wish to change the core Android OS itself, or people looking forward to release their own Android-based hardware products should definitely attend this session. If you are interested in aftermarket Android customisation like CyanogenMod or AOKP, or fascinated how skins like Touchwiz or Sense are overlaid on Android, then this is the answer.
By “Android Development” we refer to making Apps on the android stack using APIs defined to us by Google. But we overlook that the Android Operating System itself is open source and can be changed to our liking and needs.
Especially with Android penetrating the embedded market like Smart TVs, Wearables, Home appliances and Cars, we face the need to modify the core Android stack to suit various environments and hardware.
We will explore how the UI and looks can be changed. How the UX can be improved (including various usability tweaks to lockscreen, navbar, notification drawer, etc frequently used parts of the GUI shell).
Finally we will also explore how some deeper changes like application permission control, battery life and performance enhancements can be done.
I will give a complete walkthrough right from downloading the Android source code, to compiling it, to a tour through the build setup, and each kind of modification mentioned above shall be explained with simple examples using real code, and live demonstration of the modification.
* Rough idea of Java, C and C++
* Familarity with Android Development (only very basic knowledge)
* Slight familarity with Makefiles
Things to bring
* Laptops running Linux/Max (64bit)
* (recommended) The android source code (9GB+ in size) already downloaded on your laptop
Currently pursuing a Bachelor’s degree in Electrical and Electronics Engineering at Delhi Technological University, while also working at Cube26 as an Android Framework Engineer.
I have been a Developer and Device Maintainer at CyanogenMod and AOKP, making the latest Android source work on Sony Xperia devices, while adding awesome usability features that make users fall in love. A couple of features I have written have also made their way into Google’s Android Open Source Project, and can be found in Kitkat and Android L.
I have been a Open Source community partner with Sony Mobile for the last two years, which basically means I get the latest Xperias to hack around with as soon as they are launched.
At Cube26, I have been part of the team that made many contextually smart UI/UX enhacements for the Micromax Canvas A290, A310, A315 series of phones.
I am also an open source enthusiast with contributions to Linux, GNOME, Arduino, Android and other open source projects.
I was invited as a speaker at Mobile Developer Summit 2014 hosted by Saltmarch Media.