Newbs Guide to Android Rooting and Roms – Part 2
This is the second in a series of articles designed to give you a general understanding of Android’s open nature through rooting and the roms development ecosystem. This series of articles is designed to get you started, help you learn and think for your self and hopefully make you curious enough to want to keep learning about technology. This part focuses on the general Android structure. If you haven’t read part one go do that now!
So here’s the breakdown on how Android is structured, as I understand it. I think I’m pretty astute and seem to have little trouble rooting/flashing and fixing things gone wrong on Android but I’m also not perfect so I could have some things wrong. So if you know more or see something I got wrong please let me know in the comments!
Android devices don’t differ a whole lot from PCs. They have a sort of boot loader often refered to in terms of the recovery console or recovery rom. This is a boot loader that lets you do very base level things like installing custom roms and installing things that make changes to the low level, on device file system. They usually also let you do maintenance things like clearing caches and fixing permissions.
Then you get in to what is basically the OS. This is a small light weight version of Linux. Very very basic with the sole purpose of running the Dalvik Java based virtual machine. Generally you wouldn’t need to care about the Linux base except that it provides access to the file system through software like the Android Debug Bridge or ADB for short. It basically provides command line level access to the file system over USB and/or Wifi. I’ll get more in to that later.
Last you have the Java based apps and user interface. Apps come in .apk or Android PacKage files. There are two sets of these. Those installed to /system/app which are the core Android system apps. Gmail, Navigation, Phone, Market etc. and those installed to /data/data/package_name which are apps added after the fact from the market.
So now that you understand this basic structure it should make it pretty easy to get a handle on things. First you need to root your phone. There’s nothing mysterious about this concept. On Linux systems root is the administrative account that can do absolutely anything. So rooting your phone is just what it sounds like. Gaining root access so you can run/do anything you want. We’ll cover that process in general in the next and last installment coming soon to a Teknami website near you. Keep an eye out!
About the author
Currently a tech industry insider working at a Fortune top 20 company, co-founder and creative director of FatHat Games and an avid blogger. He started in what could be considered the coal mines of the tech industry doing phone support for a local ISP. In his 14 year career he has done IT work in businesses ranging from printing, publishing, healthcare and industry.