Welcome to XDA

Search to go directly to your device's forum

Register an account

Unlock full posting privileges

Ask a question

No registration required
Post Reply

[GUIDE]How To Port ROMS to Your Device [AOSP]

OP ArjunrambZ

14th October 2013, 12:14 PM   |  #1  
ArjunrambZ's Avatar
OP Senior Member
Flag some where in INDIA
Thanks Meter: 796
 
968 posts
Join Date:Joined: Jul 2013
More
Code:
/*
 * ~ DO READ THIS BEFORE ATTEMPTING~
 
 * Iam not here to guarantee any successful PORTING. nor i am responsible
   for bricked devices, dead SD cards, or a broken device. YOU are
   choosing to make these modifications, and if you point the finger
   at me for messing up your device, I will laugh at you. But I will try
   my best to explain all the necessities, so you won't mess up your Device.
 *
   ~END
*/

Hello XDA'S Today i'm back with a useful guide/tutorial for ANDROID ROM PORTING

may have tried porting roms to their phones and has been succefull but most of the case is that we being end up in bootloops or cwm errors

So i'm dedicating this post for all users how are having a craze of rom porting or for atleast those wgo wanted to try rom porting

SO LETS START
Quote:

There are two phases or rom porting
1) Its finding the correct port and source roms for ROM PORTING copying the files which is explained here
2) After a succefull port also the rom may not work properly ,we have to sort out the bugs to for a rom to become perfectly working

So with no more blahh blahh blahh Lets start the PORTING procedure

And lastly Before you a port a ROM, make sure you asked permission from the Developer!

Quote:

What you'll need:

  1. WinRAR/7zip
  2. Notepad++ (When developing, always use this)
  3. Android SDK (For Logcatting & DDMS)
    Some basic knowledge about Android
    If you are on Linux/Unix/BSD use your favorite Archiving Tool & Text Editor.



Quote:

What is base Rom:

The ROM which is Developed For your Mobile..
You can use either CM or any other AOSP roms as your Base ROM

Quote:

What is Port Rom:

The Rom Which you want to port to your Device.
Make sure that the rom has most of the hardware specifications as of your base rom

Quote:

STEP1;

Take any clean CM9, AOSP, CM7, CM10 ROM which is running on your device as Base ROM

Quote:

STEP2:

Extract it Using Winrar.

Quote:

STEP3:

Take the ROM you want to port. This Port ROM. Extract it also using Winrar.


Quote:

STEP4:

Delete app, Framework, Fonts and Media folder in System Folder of Base ROM.



Quote:

STEP5:

Now copy app, Framework, Fonts and Media folder in System Folder from Port rom to base rom system folder.



Quote:

STEP6:

Now open etc folder in both the ROMs folder.


Quote:

STEP7:

In etc folder of base ROM open permissions folder and copy all the permissions files in Port rom to your base ROM folder except platform and handheld_hardware

Quote:

STEP 8: .And Then open init.d Folder in Base ROM and Delete Every thing except banner and then copy all the files inside init.d folder of port ROM to Base ROM.

Quote:

STEP9:

Now open buid.prop file using Notepad++ and make changes to these of Base Rom as you wish.

ro.build.id=
ro.build.display.id=
ro.build.date=
ro.modversion=


Quote:

STEP10:

In build.prop file change these to same as Port Rom build.prop values.

ro.config.ringtone=
ro.config.notification_sound=
ro.config.alarm_alert=
ro.cmversion=
ro.modversion=

Also Copy anything you Find Extra in ADDITIONAL BUILD PROPERTIES related to theme..


Quote:

STEP11:

COPY THE set_perm Lines in META-INF/com/google/android/updater-script From Port to Base ROM After Deleting set_perm lines in Base ROM's Updater-Script.


Quote:

STEP12:

If You find any extra file or folder in system folder of PORT rom than copy them to your base rom system folder.

Quote:

STEP 13:


Last Step to ZIP THE FOLDERS IN ONE..
SELECT META-INF, system, boot.img(if it is having), data(if it is having).
Right Click and Select Add to Archive..
Select Zip..
Type the Name.
Click OK..

HERE THE BASIC ROM PORTING IS OVER BUT FOR SOME SPECIFIC COSTUME ROMS WE NEED LITTLE MORE STUFFS TO WORK ON ,THEY ARE SHOWN BELOW

ONLY FOR MIUI ROMS :

Quote:

Copy telocation.db and yellowpage.db From /system/etc folder to yours..

Copy content-types.properties file From /system/lib to yours..

Copy invoke-as from miui4 rom to /system/xbin and give it permissions on updater-script
set_perm(0, 0, 06755, "/system/xbin/invoke-as");
Note:It is needed for backup & themes app to work

Copy liblbesec.so from miui 4 to /system/lib and give permission on updater-script
set_perm(0, 0, 0755, "/system/lib/liblbesec.so");
It is needed for superuser app from miui to work

Change values Some of the Values in build.prop of your ROM:
ro.build.id=MIUI
ro.build.display.id=MIUI
ro.build.version.incremental=2.x.x (version number)

ro.config.ringtone=MI.ogg
ro.config.notification_sound=FadeIn.ogg
ro.config.alarm_alert=GoodMorning.ogg
ro.config.sms_received_sound=FadeIn.ogg
ro.config.sms_delivered_sound=MessageComplete.ogg


FOR ParanoidAndroid And PAC:

Quote:

Copy paranoid folder inside system/etc to yours..
Go to META-INF/com/google/android/Updater-Script of your base ROM and open it with Notepad++
Copy this line:

set_perm(1000, 1000, 0644, "/system/etc/paranoid/properties.conf");


Specially For PA:

Now Open Build.prop in /system with Notepad++
Copy these lines in Additional Properties of Build.prop:

Depends on Resolution Of your device can be pa_hdpi/pa_mdpi/pa_xhdpi. Change it according to your device.
ro.pa.family=pa_mdpi
Depend on pa version. Replace x.xx with the version of PA you are porting.
ro.pa.version=x.xx

Specially For PAC Rom:
Quote:

Now Open Build.prop in /system with Notepad++
Copy these lines in Additional Properties of Build.prop:

Replace the x.x.x with your PAC Rom version
ro.pac.version=x.x.x
Customize these lines according to your wish.
ro.pacrom.version=mesona_PAC_jb-alpha-v19.0.0
ro.modversion=mesona_PAC_jb-alpha-v19.0.0
Depends on Resolution Of your device can be pa_hdpi/pa_mdpi/pa_xhdpi. Change it according to your device.
ro.pa.family=pa_mdpi
Depend on pa version. Replace x.xx with the version of PA you are porting.
ro.pa.version=x.xx
Modify this line according to your AOKP version
ro.aokp.version=mesona_jb-Milestone-1
Modify it according to your base ROM's build.prop
ro.cm.version=xxxxxxxxxxxx
Replace any line in Your build.prop which appear twice mainly ro.cm.version and ro.modversion

FOR SPECIFIC MANUFACTURE DEVICE
Quote:

For HTC Devices:

To fix network auto select-

Decompile framework-res.apk
Go to \framework-res\res\values\bools.xml and change change <bool name="skip_restoring_network_selection">true</bool> to false

To Fix Graphichal issues:

Code:
Decompile framework.jar
Change these files with your base
smali\smali\android\os
Environment
SystemProperties
smali\smali\android\view
HardwareCanvas
HardwareRenderer$Gl20Renderer
HardwareRenderer$GlRenderer
HardwareRenderer

Quote:

IF YOU ARE HAVING BOOTLOOP THEN COPY THESE LIB FILES TO BASE ROM FROM PORT ROM:

libandroid_runtime.so
libandroid_servers.so
libmedia_jni.so


IF YOUR BASE ROM HAS ISSUES LIKE CAMERA ISSUE THAN YOUR PORTED ROM TOO WILL HAVE ISSUES.

NOW ZIP YOUR ROM AND POST IT BUT DON'T FORGET TO GIVE CREDITS TO THE DEVELOPER OF PORT ROM..

TROUBLESHOOTING AFTER SUCCEFULL PORT

[quote]
After a succefull port also there can be many bugs present which has to soved logically
here are somethings which can help in DEBUGGING

1) IF GALLERY FC :
open the system/framework and find framework-res.apk file[can use any extracting app]
in both the roms and go to res folder then to xml subfolder and copy and replace the storage_list.xml file from source to port rom
( framework-res.apk\res\xml\storage_list.xml)

Quote:

Porting Wallpapers | Lockscreen Wallpapers | bootanimation

Usually you get a wallpaper/bootanimation that doesn't fit your device. Here's a quick tutorial on how to port it to your device.

Download & Install FreeImageConverter then launch it.
For Wallpapers & Lockscreen Wallpapers:
Click Add Folder... and add the folder were the wallpapers are
Then click Advanced Convert...
Select Exact Size and set the image quality to 100
Set your Width and Height resolutions for your device.
Uncheck Add "Converted by www.freeimageconverter.com"
Select Leave the same file name and leave the Postfix & Prefix empty. Then set your output in a folder.

For bootanimation:
Extract /system/media/bootanimation.zip OR /data/local/bootanimation.zip OR /system/customize/resource/bootanimation.zip (For Oxygen ROM, the bootanimation is built into the framework-res)
Do the steps above
Move the new resized folder(s) into your bootanimation workspace
Edit the desc.txt to match your device resolutions
Zip the contents ( folder_name desc.txt )
Set compression method to Store
Delete the extracted bootanimation files
Make sure this new bootanimation.zip is in PORTED

Credits & Thanks to

# rishabh.raj37
# Peteragent5



Happy porting!
Last edited by ArjunrambZ; 14th October 2013 at 12:19 PM.
The Following 45 Users Say Thank You to ArjunrambZ For This Useful Post: [ View ]
14th October 2013, 12:30 PM   |  #2  
ArjunrambZ's Avatar
OP Senior Member
Flag some where in INDIA
Thanks Meter: 796
 
968 posts
Join Date:Joined: Jul 2013
More
Angry reserved
for clarification
The Following 4 Users Say Thank You to ArjunrambZ For This Useful Post: [ View ]
14th October 2013, 12:45 PM   |  #3  
lozohcum's Avatar
Senior Member
Flag Internety
Thanks Meter: 1,537
 
1,695 posts
Join Date:Joined: Jan 2013
More
This method gives bootloop too often. It works only for very similar devices like Xperia J & Arc or Huawei u8818
14th October 2013, 04:00 PM   |  #4  
1c3_5n0w's Avatar
Senior Member
Flag Singapore
Thanks Meter: 131
 
471 posts
Join Date:Joined: Apr 2012
Donate to Me
More
Yes. This method gives a lot of bootloops. It only can be used on devices with hairline differences between specs.

Sent from my GT-N7000 using XDA Premium 4 mobile app
The Following User Says Thank You to 1c3_5n0w For This Useful Post: [ View ]
14th October 2013, 05:28 PM   |  #5  
ArjunrambZ's Avatar
OP Senior Member
Flag some where in INDIA
Thanks Meter: 796
 
968 posts
Join Date:Joined: Jul 2013
More
Quote:
Originally Posted by lozohcum

This method gives bootloop too often. It works only for very similar devices like Xperia J & Arc or Huawei u8818

not really ,,i have tried porting with this and it worked succefullyy


may be you have to try it perfectly
14th October 2013, 05:29 PM   |  #6  
ArjunrambZ's Avatar
OP Senior Member
Flag some where in INDIA
Thanks Meter: 796
 
968 posts
Join Date:Joined: Jul 2013
More
Quote:
Originally Posted by 1c3_5n0w

Yes. This method gives a lot of bootloops. It only can be used on devices with hairline differences between specs.

Sent from my GT-N7000 using XDA Premium 4 mobile app

have you tried this methode,,iam sure it will work,,
14th October 2013, 05:33 PM   |  #7  
lozohcum's Avatar
Senior Member
Flag Internety
Thanks Meter: 1,537
 
1,695 posts
Join Date:Joined: Jan 2013
More
Quote:
Originally Posted by ArjunrambZ

have you tried this methode,,iam sure it will work,,


I started porting roms about year ago so... yes I did, I tried many "methods". This works mostly for similar devices.

Now I'm trying to use source code
14th October 2013, 07:05 PM   |  #8  
ArjunrambZ's Avatar
OP Senior Member
Flag some where in INDIA
Thanks Meter: 796
 
968 posts
Join Date:Joined: Jul 2013
More
Quote:
Originally Posted by lozohcum

I started porting roms about year ago so... yes I did, I tried many "methods". This works mostly for similar devices.

Now I'm trying to use source code

yah trying with source code is the best way ,but this tut is for users who really cant get it using source
14th November 2013, 05:59 PM   |  #9  
Senior Member
Flag Liverpool
Thanks Meter: 6
 
102 posts
Join Date:Joined: Jan 2013
More
[QUOTE=Arjunramb456651]
Code:
/*
 * ~ DO READ THIS BEFORE ATTEMPTING~
 
 * Iam not here to guarantee any successful PORTING. nor i am responsible
   for bricked devices, dead SD cards, or a broken device. YOU are
   choosing to make these modifications, and if you point the finger
   at me for messing up your device, I will laugh at you. But I will try
   my best to explain all the necessities, so you won't mess up your Device.
 *
   ~END
*/

Hello XDA'S Today i'm back with a useful guide/tutorial for ANDROID ROM PORTING

may have tried porting roms to their phones and has been succefull but most of the case is that we being end up in bootloops or cwm errors

So i'm dedicating this post for all users how are having a craze of rom porting or for atleast those wgo wanted to try rom porting

SO LETS START


And lastly Before you a port a ROM, make sure you asked permission from the Developer!












































HERE THE BASIC ROM PORTING IS OVER BUT FOR SOME SPECIFIC COSTUME ROMS WE NEED LITTLE MORE STUFFS TO WORK ON ,THEY ARE SHOWN BELOW

ONLY FOR MIUI ROMS :




FOR ParanoidAndroid And PAC:



Specially For PAC Rom:


FOR SPECIFIC MANUFACTURE DEVICE





IF YOUR BASE ROM HAS ISSUES LIKE CAMERA ISSUE THAN YOUR PORTED ROM TOO WILL HAVE ISSUES.

NOW ZIP YOUR ROM AND POST IT BUT DON'T FORGET TO GIVE CREDITS TO THE DEVELOPER OF PORT ROM..

TROUBLESHOOTING AFTER SUCCEFULL PORT

Quote:

After a succefull port also there can be many bugs present which has to soved logically
here are somethings which can help in DEBUGGING

1) IF GALLERY FC :
open the system/framework and find framework-res.apk file[can use any extracting app]
in both the roms and go to res folder then to xml subfolder and copy and replace the storage_list.xml file from source to port rom
( framework-res.apk\res\xml\storage_list.xml)





Credits & Thanks to

# rishabh.raj37
# Peteragent5



Happy porting!

Can you port an AOSP/CM based rom using a Manufacturer/maufacturer based ROM as the base (i.e. touchwiz rom)?
16th November 2013, 12:02 AM   |  #10  
Senior Member
Thanks Meter: 29
 
137 posts
Join Date:Joined: Feb 2012
So i own a Galaxy Tab 2 10.1 from AT&T... If i wanted to port a 4.2.2 Touchwiz rom to my tablet, would the steps vary much from those you've listed?

Sent from my SGH-I337 using XDA Premium 4 mobile app

---------- Post added 16th November 2013 at 12:02 AM ---------- Previous post was 15th November 2013 at 11:59 PM ----------

Quote:
Originally Posted by Neozx25

So i own a Galaxy Tab 2 10.1 from AT&T... If i wanted to port a 4.2.2 Touchwiz rom to my tablet, would the steps vary much from those you've listed? I would be using a rom that runs on another tab 2 10.1 but not for AT&T. Or even if i wanted an AOSP rom, would be that difficult?

Sent from my SGH-I337 using XDA Premium 4 mobile app



Sent from my SGH-I337 using XDA Premium 4 mobile app

Post Reply Subscribe to Thread

Tags
android, base, port, porting, rom
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes