Becoming Android ROM developer - Android Q&A, Help & Troubleshooting

I am really confused! I went through a lot of threads and forums. Unfortunately i can't get some of the concepts....
Can someone give me a roadmap on how to get started with compiling android roms(not custom roms)
How do OEMs like Samsung, HTC compile their ROMs??? I mean where do they learn that the particular process should be done this way regarding Android firmware???
In Repo Sync, is it possible to pause and resume that huge download? If i want to reinstall linux, is it possible to backup that 30-40GB download???
I have Asus Fonepad 7 and has kernel sources here: http://www.asus.com/support/Download/28/7/0/7/K0zj5cW6VJEzTjQR/32/ My question is am i able to create stock Android ROMs like those in Nexus devices and fastboot images for flashing on to this device??? Also do x86 devices have a different way of compiling ROM???
I want to do things the original official way... Please help me, I am very eager to learn!!!

I would be more than happy if someone could help!!!

Related

[Q] Device dependency of Pure Android ROMs

I was going through the xdadevelopers forums when I saw that the process of installing ROMs seems of be device dependent. Can someone please explain me why it is so?
More specifically, shouldn't the process of installing a pure Android ROM (AOSP) be the same on every device since all of them are based on the ARM architecture.
I haven't installed an android ROM before, but I am trying to understand why the process isn't similar to installing a Linux based OS on my computer.
I recently bought an Android tablet (HCL ME X1) to experiment with ROMs but later realized that there aren't ROMs for this device. Can someone let me if I can use the ROMs of any other device for this?
Because all different models have different hardware so the rom has to be specific to that device.
Sent from my GT-I9100 using Tapatalk
Thanks for the reply stylez.
So I guess if I want to develop a custom ROM (say an AOSP ROM) I will need the device drivers which my vendor wrote.
Is there any way of identifying the vendor specific drivers of my device? I am using an HCL ME X1.

How do I Build an Android rom for New Device?

I want to learn how to build a rom for an new device that no one has created a custom rom for. I am kinda new at this. But I want to learn how. I is there a full on guild or something on how to do it... I want to know. There are devices out there that have to custom roms yet that I would like to build for. I would like to use AOSP to build a clean fresh pure Android rom. Those devices I want to build for have the right specs to run a newer Android version but the developers did not realse an update for. I really would like to learn how to build/create my own Android rom from scratch... Learn how to build a kernel, bootloader, etc. to help the rom run right. Can anyone help?
http://forum.xda-developers.com/showthread.php?t=1272270
Thanks me if it helps you
@jakeh9777
Read this http://forum.xda-developers.com/chef-central/android/guide-android-rom-development-t2814763
Especially post #4 and below
Thanks!
My only problem is where do I get a device tree and all the files for the device? I am wanting to build roms for devices that no one else build roms for yet. So it is going to be hard to customize roms for those devices without any roms in the first place. I know how to download source but I can't build it a rom from it. I just want to support devices that no one else has but the ones people want still... And some of them aa silde out qwerty keyboards. Can I get some more easier instite... I better at learning physically, so a video will be good too.
P.S. I can't get a device tree from CM if the device is not been added... That is why I said these devices don't have roms yet.

I need a kernel guide and I have some questions about ROM/Kernel porting.

Hey! I'd love to know more about kernels, but I can't find that info.
What are the differences between Android versions in Kernels? How hard would it be to port Android on some device that already has a linux kernel? (Maybe something simmilar to what this guy did, just with more info on the process) What about a device that already has an Android kernel, just for other android version?
Would it be possible to port an older android version to Nexus 5x? (I.E. Lollipop, maybe even KitKat)
EDIT:
Okay, so I know that I would have to port kernel modules from devices with same chipsets, but I don't really get it.

Need help to start Android Engineering

I am completely new to Android Engineering and want to learn it. Till now, I have tried building aosp oreo from repo. It is built successfully but I don't know about the use of all the folders that are downloaded by the repo. What is the use or importance of each folder in repo? Where can I learn more about this?
I have also modified my stock firmware (only removed some bloatware apps) and rebuilt the firmware. I haven't installed it yet. I used android kitchen which helped me with signing the zip but I am afraid the signature might be for testing and not the official vendor signature. I have phone with unlcoked bootloader but it's still on stock recovery. According to my knowledge, unlocking bootloader helps us to flash unofficial files but people at XDA say that we should also have custom recovery to flash custom ROMs. Should I flash the modified ROM built by me in device with stock ROM and unlocked bootloader?
My device doesn't have official TWRP support. How can I port recovery or build it from scratch for my phone?
Also, I have only modified stock ROM and need to learn porting ROMs like porting MIUI for my device. How can we port ROMs?
Sorry for asking all these at once but I tried getting answer one after another which confused me a lot. I am a noob in this field.
I read XDA thread of TWRP developer which included a guide on how to build TWRP for any device. But as the author said, that post wasn't for noobs. Maybe I need to learn a lot before I reach that level of understanding. But I don't know what to learn and from where. Please help..
And one last thing - What is a device tree? Or vendor tree? I saw these words many times when I was trying to understand the above things. But I still don't know what these are and Google doesn't help. Thank you everyone..
Hi
there is this section here https://forum.xda-developers.com/android/software
you`ll find some sticky threads of the top with plenty of info , have a look !
you may also use search and type XDA University , it will reveal also some useful links
Good luck !

How to start developing a ROM for a device?

Hi all, i've read other threads about this argument but any of them satisfied me.
I am curious about the steps to do for developing a custom ROM for an unmodded device, so for example taking the android source code and make it work on a device.
In my case, I will use a Samsung Grand Neo (GT-I9060).
How do developers manage to port a ROM to a new device? How do they make device features working? Do they use camera drivers and other drivers to reach this goal?
How to upgrade the firmware to a newer version if no newer version is released by the manufacturer?
Sorry for these nooby questions
Waiting for your answers

Categories

Resources