[HOW TO] Beginners Guide
to
Android ROM Development
This tread is not
monitored or updated any more use for reference only
Quote:
Started
this tutorial in the HTC HD2-Nand forum, I think maybe someone
can find it useful
Who is this tutorial for?
·
Absolute
Beginners like me
·
People
with little or no programming skills
This is a very basic tutorial!!
|
Quote:
Step
one: Setting up the Android kitchen
Go to dsixda's thread for a list of supported devices.
Here is a summary of the installation process( I recommend you read the tread first)
1. Before you do anything install the java jdk(find it in dsixda's thread)
2. Download and extract the cygwin_packages.zip provided
by dsixda on third post
3. Run the set up(make sure there is no previous cygwin
installation)
4. Follow the kitchen read me txt!!!
5) local package directory
*must* be the path to the cygwin_packages folder that you just extracted
6) when it shows all the
package names, go to the top and select "all <-> default"
until it changes to "all <-> install" (you must click on the
arrows)
7. Run the cygwin at least once and close, now you will
see a folder inside the cygwin installation like this: Home\your user name\
8. Download the kitchen and extract to the home\your user
name\
9. Rename the dsixda-android-kitchen-*** folder to just
"kitchen"
10. Now your ready to run the kitchen type:
Code:
cd kitchen(enter)
./menu(enter)
11. If you did things right you should see this:
congratulations!!
|
Quote:
Step
Two: Setting up a working folder
1. First our folder structure should look like this:
Code:
cygwin folder/home/your user
name/kitchen
2. Inside the kitchen it should look like this:
3. Now we need a rom to work on, for this tutorial i will
use my own rom but you can use any hd2 rom. Place the original rom zip in
the original_updatefolder inside the
kitchen.
4.run the cygwin.exe again type:
Code:
cd kitchen(enter)
./menu(enter)
5.now enter option 1, enter again. You should see your rom
listed, choose and enter
6.you will be asked about changing the working folders
name, at this point it makes no difference so just continue.
7.you will be asked to convert to update-scrip do it and
continue
8. Now you can view the roms info
9. congratulations you have a working folder!!!
|
Quote:
Step
Three :change/modify/update!
First I will be covering basic changes you can
make to your rom, later I will be adding more helpful hints.
Quote:
Adding/removing applications
1. Go to the working folder
where you extracted your rom, inside you will find:
or
2. Then go to
"system/app" inside this folder you will find all the rom
applications(apks) you may also find some in the data folder if your rom
has this folder.
3. Copy, replace, and change any
app(apk) be carefull if you dont know what the apk is do not delete!!
4. Congrats you have modified a
rom, if your ready and want to see if it worked skip to step four to buil
rom from working folder.
|
Quote:
Adding new boot animation
1. Just replace the
bootanimation.zip located in "workingfolder/system/media" with
the boot animation of your choice.
here is a sample of my bootanimation
to try.
|
Quote:
Edit the gps script for your
country/location
1. In the
workingfolder/system/etc/ you will find a file named gps.conf, you can
2. using the right gps script in
this file can speed up gps lock, you can
find some from angeldeath, download extract and replace
the gps.conf.
|
Quote:
Changing the default wallpaper
1. Be very careful doing this,
do not edit,delete or modify an apk without knowing what it is or does.not
all things are as simple as copy and paste.
2. go to the
workingfolder/system/framework/
3. Install 7zip and
open the framework-res.apk
4. With in the framework-res.apk
with 7zip go to "res/drawable-hdpi/" and look for the
default_wallpaper.jpg. You can extract modify and replace with new one.
5. Make sure its the same file
format and image dimensions.(in some roms you can also modify the
default_lock_wallpaper.jpg)
|
Quote:
MMS Fix for T-mobile
1. *I
Have only tested this on MIUI Roms*
2. Go to
"workingfolder/system/app"
3. Find MMS.apk
4. Right click and open
with 7zip
5.Inside mms.apk go to
"rex/xml/"
|
Quote:
modifying build.prop
"build.prop"
is a file that contains various system-vital "parameters"
Some can be modified with little risk, some can cause havoc. So Please do
this Carefully!!!!!!
1. Locate the file
"workingfolder/system/"
There is several
simple changes that can be done, I will start with some and add more
later.
Quote:
LCD Density
1. If you dont know anything
about this topic Here is some info to get started
2.Locate this line inside the
build.prop "ro.sf.lcd_density=240"
3.The only value you will
modify is the "240" to your preference.
Difference is simple
and visible!
|
|
Quote:
Update Kernel From update.zip
Note that it's not always as
easy as copy and paste
1. Extract you kernel_update.zip
2. Copy and replace the
extracted files to the corresponding folders inside your finished ROM
3.Start with the boot folder
3. Than the system folder (there
might be some libs and modules associated with the rom)
4. Another helpful hint is to
open the updater-script
to see if your kernel requires
you to delete anything for the kernel to work correctly.
sample script:
Code:
|
|
Quote:
Step
Four: repackage the rom
Quote:
Now that you have
made some changes it's time to test!!
1. Run the kitchen and enter
option 99 - "biuld rom from working folder"
2. Choose mgldr or clk
3. I recommend that you go with
all default options until you get more experience with the kitchen.
4. When its all done you will
find a folder inside "cygwin/home/yousername/kitchen" called
output_zip
5. Inside the folder is your new
rom ready to be flashed and tested!!!
|
Quote:
UPDATER-SCRIPT
Quote:
I had a couple of request on how
to get custom txt during the ROM installation in CWM,
the updater-script basically
tells CWM what steps to take during the installation(flashing rom).
If you don't have any experience
please don't edit anything other than what is in this simple tutorial.
1.First once you have your Rom
ready in .zip format, Open with 7zip
2.Go to
META-INF/com/google/android
3.Extract the updater-scrip file
5.Any text that would appear
during the CWM install should be in this format :
Code:
ui_print("Put your text in
HERE");
Here is the requested 3d MIUI
LOGO for example:
Code:
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print("");
ui_print(" ___ ___ ");
ui_print(" /__/\\ ___ /__/\\ ___ ");
ui_print(" |
|::\\ / /\\
\\ \\:\\ /
/\\ ");
ui_print(" |
|:|:\\ / /:/ \\
\\:\\ / /:/
");
ui_print(" __|__|:|\\:\\
/__/::\\ ___ \\
\\:\\ /__/::\\ ");
ui_print("/__/::::|
\\:\\\\__\\/\\:\\__ /__/\\
\\__\\:\\\\__\\/\\:\\__ ");
ui_print("\\ \\:\\~~\\__\\/ \\
\\:\\/\\\\ \\:\\ / /:/
\\ \\:\\/\\");
ui_print(" \\ \\:\\ \\__\\::/ \\ \\:\\
/:/ \\__\\::/");
ui_print(" \\
\\:\\ /__/:/ \\
\\:\\/:/ /__/:/ ");
ui_print(" \\
\\:\\ \\__\\/ \\
\\::/ \\__\\/ ");
ui_print(" \\__\\/ \\__\\/ ");
ui_print(" ");
ui_print(" ");
ui_print(" ");
ui_print(" ");
ui_print(" ");
6.Add your text start at top and
save,
then replace with new
updater-scrip
|
congratulations!!
|
Quote:
Quote:
There is allot more that I did not cover, didn't
even scratch the surface.
This was not intended for porting roms or any mayor scripting, this wont
help you
with writing drivers, kernels, libs etc. Just tried to make it as simple as
possible for
beginners like me, so we can understand the amount of work devs go through.
Please! please! before you release any Rom, test and test again!!!!!!
Like I said this was Originally for the HD2 so use
at your own discretion!!
(original thread)
|
|
0 comments:
Post a Comment