AOSP Resources

346 views
Skip to first unread message

Heman Parbhakar

unread,
Sep 14, 2020, 12:37:46 PM9/14/20
to Android Building
Hello Everyone,

Can anyone tell me good resources to learn Android ROM Development from scratch. Thanks in Advance!


Glenn Kasten

unread,
Sep 14, 2020, 3:04:07 PM9/14/20
to Android Building
I'm not quite sure what you mean by "from scratch", but I recommend starting here:
in particular tab "set up" and then the sub-tabs of "set up".

In general it is usually easier to first build for an AOSP-supported target device
before attempting to port to another device. Supported devices are listed here:

Heman Parbhakar

unread,
Sep 15, 2020, 10:37:08 AM9/15/20
to Android Building
I am new to Android ROM Development before that i was an Android Application Developer. 
The link you have provided is for the setting up the environment in your system which is already done on my side. My Question is from where could i learn the things i need to know regarding ROM development. I am already familiar with C/C+ +, Java and Kotlin. 
Things how the processes work in depth.
What each folder in the build represents.
What to do if i need to make WIFI Disable or GPS Disable the things regarding this.
Thanks in advance for your help. 

Igor Kukushkin

unread,
Sep 15, 2020, 11:16:21 AM9/15/20
to android-...@googlegroups.com
Duh try narrowing the question down, way too much possibilities there.

Try building the basic targets first (Cuttlefish, emulator image, generic GSI, some Pixel/Nexus targets, Auto if curious). Then start looking into how makefiles (.mk)/Bazel is working. Then try the same thing with any custom fork, and proceed to experimenting (adding some HAL changes, custom system server services), or look into hooking (frida/xposed/magisk) - that alone is a great experience.
Do try to understand the reasoning behind using Gerrit, that's kinda important - then find a couple projects (forks) using it and see what changes are common these days.

On Mon, Sep 14, 2020 at 6:37 PM Heman Parbhakar <parbhak...@gmail.com> wrote:
Hello Everyone,

Can anyone tell me good resources to learn Android ROM Development from scratch. Thanks in Advance!


--
--
You received this message because you are subscribed to the "Android Building" mailing list.
To post to this group, send email to android-...@googlegroups.com
To unsubscribe from this group, send email to
android-buildi...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-building?hl=en

---
You received this message because you are subscribed to the Google Groups "Android Building" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-buildi...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/android-building/6e3aa5df-2457-48e9-81d0-0a7e1fd1fcdbn%40googlegroups.com.

Heman Parbhakar

unread,
Sep 15, 2020, 11:42:07 AM9/15/20
to Android Building
Thanks for the information. But it would be great if you could suggest any book regarding this.

Glenn Kasten

unread,
Sep 15, 2020, 11:42:43 AM9/15/20
to Android Building
The classic book is https://www.amazon.com/Embedded-Android-Porting-Extending-Customizing/dp/1449308295
but it's old and may only be available used.


On Tuesday, September 15, 2020 at 8:16:21 AM UTC-7, Igor Kukushkin wrote:
Duh try narrowing the question down, way too much possibilities there.

Try building the basic targets first (Cuttlefish, emulator image, generic GSI, some Pixel/Nexus targets, Auto if curious). Then start looking into how makefiles (.mk)/Bazel is working. Then try the same thing with any custom fork, and proceed to experimenting (adding some HAL changes, custom system server services), or look into hooking (frida/xposed/magisk) - that alone is a great experience.
Do try to understand the reasoning behind using Gerrit, that's kinda important - then find a couple projects (forks) using it and see what changes are common these days.

On Mon, Sep 14, 2020 at 6:37 PM Heman Parbhakar <parbhak...@gmail.com> wrote:
Hello Everyone,

Can anyone tell me good resources to learn Android ROM Development from scratch. Thanks in Advance!


--
--
You received this message because you are subscribed to the "Android Building" mailing list.
To post to this group, send email to android-building@googlegroups.com

To unsubscribe from this group, send email to

For more options, visit this group at
http://groups.google.com/group/android-building?hl=en

---
You received this message because you are subscribed to the Google Groups "Android Building" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-building+unsubscribe@googlegroups.com.

Igor Kukushkin

unread,
Sep 15, 2020, 2:01:01 PM9/15/20
to android-...@googlegroups.com
>  Thanks for the information. But it would be great if you could suggest any book regarding this.

Karim Yaghmour's "Embedded Android: Porting, Extending, and Customizing" is THE book, released in 2003 but still actual (I use it as a part of developer's onboarding @ work anyway), couple other are mentioned at https://elinux.org/Android_Tutorials but I find them both outdated and badly structured. It is great if you like something more like a textbook - and for work, the author is providing some courseware (not hard to find online, but ask company if they want to pay - never hurts :D).  

Roger Ye's "Android System Programming" is marginally better in terms of date (it's still not covering things such as cuttlefish/chromeos/fuchsia relations, or treble/HAL), and there is preview and even sources for it available @ O'Reilly's site if you want to take a look first.

"Android Security Internals: An In-Depth Guide to Android's Security Architecture" is both old, lacks a lot in introduction, but is a right choice if you prefer a security oriented mindset - though its not good in terms of actual security (that nowadays takes a lot of lurking in github's corners as well as monitoring researchgate).

Igor Kukushkin

unread,
Sep 15, 2020, 2:05:57 PM9/15/20
to android-...@googlegroups.com
>  but it's old and may only be available used.

"Old" is Android 8, Karim's can be considered as wisdom of the ancient in fact xD, as it refers to AOSP 2.3.4.
But his courseware is more up-to-date, and dude is still quite active - e.g. he did some great talk @ https://linuxplumbersconf.org/event/7/page/100-watch-live-free (Android MC, first day), "Integrating open source packages into the AOSP", https://linuxplumbersconf.org/event/7/contributions/779/ (click live stream link)

On Tue, Sep 15, 2020 at 5:42 PM 'Glenn Kasten' via Android Building <android-...@googlegroups.com> wrote:
but it's old and may only be available used.

On Tuesday, September 15, 2020 at 8:16:21 AM UTC-7, Igor Kukushkin wrote:
Duh try narrowing the question down, way too much possibilities there.

Try building the basic targets first (Cuttlefish, emulator image, generic GSI, some Pixel/Nexus targets, Auto if curious). Then start looking into how makefiles (.mk)/Bazel is working. Then try the same thing with any custom fork, and proceed to experimenting (adding some HAL changes, custom system server services), or look into hooking (frida/xposed/magisk) - that alone is a great experience.
Do try to understand the reasoning behind using Gerrit, that's kinda important - then find a couple projects (forks) using it and see what changes are common these days.

On Mon, Sep 14, 2020 at 6:37 PM Heman Parbhakar <parbhak...@gmail.com> wrote:
Hello Everyone,

Can anyone tell me good resources to learn Android ROM Development from scratch. Thanks in Advance!


--
--
You received this message because you are subscribed to the "Android Building" mailing list.
To post to this group, send email to android-...@googlegroups.com

To unsubscribe from this group, send email to

For more options, visit this group at
http://groups.google.com/group/android-building?hl=en

---
You received this message because you are subscribed to the Google Groups "Android Building" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-buildi...@googlegroups.com.

--
--
You received this message because you are subscribed to the "Android Building" mailing list.
To post to this group, send email to android-...@googlegroups.com

To unsubscribe from this group, send email to

For more options, visit this group at
http://groups.google.com/group/android-building?hl=en

---
You received this message because you are subscribed to the Google Groups "Android Building" group.
To unsubscribe from this group and stop receiving emails from it, send an email to android-buildi...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/android-building/89371d54-709a-4aef-ae4b-89186b47f563o%40googlegroups.com.

Heman Parbhakar

unread,
Sep 17, 2020, 10:42:40 AM9/17/20
to Android Building
Thanks alot i will check the link you have shared.
Reply all
Reply to author
Forward
0 new messages