How to make custom ROM for VMOS Pro

Note: This is not really for beginners, you must know the basics of the Android ROM structure, and also be able to manage the files, like editing build.prop, init.rc, copying files from flashable zip manually, etc. I will not explain in depth of it since there are plenty of infomation on XDA forum. Don't worry, you don't need any coding knowledge.

Zipping ROM on Windows and linux has caused problem with the ROM that it wouldn't boot properly so I can only make tutorial for Android at this time. It's actually easier to do on phone than on PC

Do not expect that you can make a ROM of other Android versions like Android 11 than the VMOS provided, or use the ROM from other devices. You would need a kernel source from VMOS, VM drivers sources, AOSP project sources to build and so on and make changes to VMOS app to support it properly

Getting started:
You need ZArchiver app, it's a lot faster to zip, extract, copy, move, delete than other apps. I prefer Xplore app to work with the ROM because of dual panes. Unfortunately Xplore's unzipping/zipping is very slow

You can use a non-rooted phone and work with your ROM in internal memory with EXT32 or exFAT format.
I recommended a rooted phone or rooted VMOS to work with ROM in /data partition with EXT4 format, since Android ROM is always EXT4 format. Preferably to do work in /data/local/tmp. Working with ROM in internal memory sometime caused some problem with the ROM for me

Obtain the ROM files from VMOS Pro APK file or you can use my custom ROM. You can use Xplore app to open APK as ZIP file from App manager list (Click Show and check App manager to appear). Hold on the app or APK file and select Open as ZIP

/assets/rom contains the ROM file. They are 7z files
/assets/plugin/ contains flashable ZIP file

Open ROM file directly without adding an extension and extract it to your desired folder

Have fun working with the ROM :)

For rooting, extract contents from on xbin folder duplicate daemonsu_10 (GameGuardian support) twice and rename it to su and sx, then copy them to system folder
For xposed and google, extract them and simply copy them to system folder

Note: As of VMOS Pro 1.0.2, they may have added some sort of anti-piracy to cause Superuser to crash on 7.1. This can be fixed by changing the package name of decompiled Superuser.apk and daemonsu binary using hex editor or notepad++

After your work is done, zip all your ROM structures as ZIP file using ZArchiver like the screenshot below. Do not just zip a sub folder of your work directory because the ROM would fail to install

Select your desired directory and name your ZIP file, and click OK

Select all and click green button

Open VMOS app, import your ROM and see if it works. If it does, congratz!

I'm not a ROM developer btw, I can't make a custom kernel or drivers. I have been installing custom ROM and modding my phone since 2012 so I just got familar with the Android ROM structure so I can modify the ROM


Popular Posts

VMOS Pro Global/CN Free Custom ROMs | Android 4.4.4, 5.1.1, 7.1.2 | ROOT | Gapps | Xposed | (NO VIP NEEDED)

How to access /Android/obb directory on Android 11