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.
You CANNOT port other Android versions like Android 11, or use the ROM from other devices, than the VMOS provided. You would need a kernel source from VMOS, VM drivers sources, AOSP project sources to build and so on, and re-compile VMOS app to support it properly. It's a lot harder than you think. If you need other Android version than the VMOS provided, consider sending a feedback to VMOS team. Please donot be that dumb. Dumb questions like this are subject to be ignored
Special thanks to 4pda forum for more info
Getting started:
Get VMOS: VMOS Virtual Machine Operating System - Double Your Android System or VMOS官方网站-虚拟大师-安卓手游模拟器-本地虚拟手机
Where to get the original ROM?
You can just backup your installed ROM and you will have a backed up zip file on /storage/emulated/0/vmospro/backup.
Your rom will be downloaded along the path /data/data/com.vmos.pro/rom/ No extension, this is a .7z archive.
And meta information along the path /data/data/com.vmos.pro/rom/rom_info/ Without extension, this is json.
If you have root, you can get original ROM files from /data/data/com.vmos.pro/rom, but the problem is the ROM is in .7z archive and you need to rezip it as .zip file.
Here's how:
On the main screen, click the small settings icon of your ROM and choose System backup
Start the backup. Let it run in foreground
After it's done, click OK
You will see the backup on /storage/emulated/0/vmospro/backup
Even modify on phone straight forward, without PC
Enjoy modding!
Modifying ROM
Adding Google apps, root and Xposed
I have uploaded my files that you can use to add files in the ROM
Copying Google, Root and Xposed files to the ROM is pretty much straight forward
Root:
Recommended to use my modded Root. The package name has been changed to com.andnixshpmt1.superuser
In order to get root work, duplicate daemonsu to su and sx in xbin folder. I already did that in my modded Root
Cleaning up the file system
√ - The folder can be deleted
× - The folder cannot be deleted
acct √ - processor logs
data × - data section (you can clear its contents)
cache √ - OTA cache
config √ - don't know, but you can delete
dev and mnt × - FS logs and something else (you can clear their contents)
oem √ - something related to OEM
sys √ - a folder for drivers but we don’t have them
system × - this is the system itself :D
storage × - the internal memory of Roma
sbin × - system binaries
root and proc √ - have nothing to do with root
Remove logging related
Delete files in system/bin
Delete files from system/etc/init
Removing Unwanted Apps:
Other garbage:
Warning:
Before you are sharing your rom, make sure to delete data folder since it may contain sensitive data. It is important you DO NOT store any sensitive data in VMOS whatsoever. I'm not responsible if your data got stolen
Installing ROM:
To install your custom ROM, click on 3 dots and choose Import local ROM. Use Rec the VM (Restore) if you want to restore backed up ROM from /storage/emulated/0/vmospro/backup with full personal data
Choose a file
You CANNOT port other Android versions like Android 11, or use the ROM from other devices, than the VMOS provided. You would need a kernel source from VMOS, VM drivers sources, AOSP project sources to build and so on, and re-compile VMOS app to support it properly. It's a lot harder than you think. If you need other Android version than the VMOS provided, consider sending a feedback to VMOS team. Please donot be that dumb. Dumb questions like this are subject to be ignored
Special thanks to 4pda forum for more info
Getting started:
Get VMOS: VMOS Virtual Machine Operating System - Double Your Android System or VMOS官方网站-虚拟大师-安卓手游模拟器-本地虚拟手机
Where to get the original ROM?
You can just backup your installed ROM and you will have a backed up zip file on /storage/emulated/0/vmospro/backup.
Your rom will be downloaded along the path /data/data/com.vmos.pro/rom/ No extension, this is a .7z archive.
And meta information along the path /data/data/com.vmos.pro/rom/rom_info/ Without extension, this is json.
If you have root, you can get original ROM files from /data/data/com.vmos.pro/rom, but the problem is the ROM is in .7z archive and you need to rezip it as .zip file.
Here's how:
On the main screen, click the small settings icon of your ROM and choose System backup
Start the backup. Let it run in foreground
After it's done, click OK
You will see the backup on /storage/emulated/0/vmospro/backup
Even modify on phone straight forward, without PC
Enjoy modding!
Modifying ROM
Adding Google apps, root and Xposed
I have uploaded my files that you can use to add files in the ROM
File folder on MEGA
mega.nz
Copying Google, Root and Xposed files to the ROM is pretty much straight forward
Root:
Recommended to use my modded Root. The package name has been changed to com.andnixshpmt1.superuser
In order to get root work, duplicate daemonsu to su and sx in xbin folder. I already did that in my modded Root
Cleaning up the file system
√ - The folder can be deleted
× - The folder cannot be deleted
acct √ - processor logs
data × - data section (you can clear its contents)
cache √ - OTA cache
config √ - don't know, but you can delete
dev and mnt × - FS logs and something else (you can clear their contents)
oem √ - something related to OEM
sys √ - a folder for drivers but we don’t have them
system × - this is the system itself :D
storage × - the internal memory of Roma
sbin × - system binaries
root and proc √ - have nothing to do with root
Remove logging related
Delete files in system/bin
- bug report
- bugreportz
- dumpstate
- dumpsys
- logcat
- debuggerd
- debuggerd64
- logd
- logwrapper
- log
Delete files from system/etc/init
- atrace.rc
- debuggerd.rc
- debuggerd64.rc
- dumpstate.rc
Code:
logcat.live=disable
dalvik.vm.checkjni=false
debugtool.anrhistory=0
profiler.debugmonitor=false
profiler.launch=false
profiler.hung.dumpdobugreport=false
persist.android.strictmode=0
ro.kernel.android.checkjni=0
ro.kernel.checkjni=0
profiler.forse_disable_err_rpt=1
profiler.forse_disable_ulog=1
dalvik.vm.verify-bytecode=false
ro.config.nocheckin=1
net.ipv4.tcp_no_metrics_save=1
ro.config.ksm.support=false
libc .debug.malloc=0
av.debug.disable.pers.cache=true
persist.vendor.ssr.enable_ramdumps=0
Removing Unwanted Apps:
Android 4.4.4
system/app/BasicDreams.apk
system/app/BasicDreams.odex
system/app/Bluetooth.apk
system/app/Bluetooth.odex
system/app/Email.apk
system/app/Email.odex
system/app/Exchange2.apk
system /app/Exchange2.odex
system/app/Galaxy4.apk
system/app/Galaxy4.odex
system/app/HoloSpiralWallpaper.apk
system/app/HoloSpiralWallpaper.odex
system/app/HTMLViewer.apk
system/app/HTMLViewer.odex
system/app/VideoEditor.apk
system/app/VideoEditor.odex
system/app/QuickSearchBox.apk
system/app/QuickSearchBox.odex
system/app/PrintSpooler.apk
system/app/PrintSpooler.odex
system/app/PicoTts.apk
system/app /PicoTts.odex
system/app/Photable.apk
system/app/Photable.odex
system/app/PhaseBeam.apk
system/app/PhaseBeam.odex
system/app/NoiseField.apk
system/app/NoiseField.odex
system/app/OpenWnn.apk
system /app/OpenWnn.odex
system/app/PinyinIME.apk
system/app/PinyinIME.odex
system/app/MagicSmokeWallpapers.apk
system/app/MagicSmokeWallpapers.odex
system/app/WAPPushManager.apk
system/app/WAPPushManager.odex
system/ app/VisualizationWallpapers.apk
system/app/VisualizationWallpapers.odex
system/priv-app/BackupRestoreConfirmation.apk
system/priv-app/Backup/RestoreConfirmation.odex
system/priv-app/Contacts.apk
system/priv-app/Contacts.odex
system/priv-app/ContactsProvider.apk
system/priv-app/ContactsProvider.odex
system/priv-app/Dialer.apk
system/priv-app/Dialer.odex
system/priv-app/Mms.apk
system/priv-app /Mms.odex
system/priv-app/SharedStorageBackup.apk
system/priv-app/SharedStorage/Backup.odex
system/priv-app/VoiceDialer.apk
system/priv-app/VoiceDialer.odex
system/priv-app/FusedLocation. apk
system/priv-app/FusedLocation.odex
system/priv-app/InputDevices.apk
system/priv-app/InputDevices.odex
system/priv-app/ProxyHandler.apk
system/priv-app/ProxyHandler.odex
system/priv- app/OneTimeInitializer.apk
system/priv-app/OneTimeInitializer.odex
system/priv-app/TeleService.apk
system/priv-app/TeleSercice.odex
Android 5.1.1
/system/app/CaptivePortalLogin
/system/app/com.baidu.input
/system/app/HTMLViewer
/system/app/via
/system/app/PicoTts
/system/app/PacProcessor
/system/priv-app/Contacts
/system /priv-app/ContactsProvider
/system/priv-app/Dialer
/system/priv-app/SharedStorageBackup
/system/priv-app/MmsService
/system/priv-app/FusedLocation
/system/priv-app/ProxyHandler
/system/priv -app/InputDevices
/system/priv-app/Telecom
/system/priv-app/TelephonyProvider
/system/priv-app/TeleService
Android 7.1.2
/system/app/BasicDreams
/system/app/CaptivePortalLogin
/system/app/CtsShimPrebuilt
/system/app/WallpaperBackup
/system/app/via
/system/app/PrintRecommendationService
/system/app/PhotoTable
/system/app/PacProcessor
/system /app/OpenWnn
/system/app/iflyime
/system/app/HTMLViewer
/system/priv-app/BackupRestoreConfirmation
/system/priv-app/BlockedNumberProvider
/system/priv-app/CtsShimPrivPrebuilt
/system/priv-app/StorageManager
/system /priv-app/SharedStorageBackup
/system/priv-app/TeleService
/system/priv-app/TelephonyProvider
/system/priv-app/Telecom
/system/priv-app/OneTimeInitializer
/system/priv-app/InputDevices
/system/priv-app/FusedLocation
/system/priv-app/ProxyHandler
system/app/BasicDreams.apk
system/app/BasicDreams.odex
system/app/Bluetooth.apk
system/app/Bluetooth.odex
system/app/Email.apk
system/app/Email.odex
system/app/Exchange2.apk
system /app/Exchange2.odex
system/app/Galaxy4.apk
system/app/Galaxy4.odex
system/app/HoloSpiralWallpaper.apk
system/app/HoloSpiralWallpaper.odex
system/app/HTMLViewer.apk
system/app/HTMLViewer.odex
system/app/VideoEditor.apk
system/app/VideoEditor.odex
system/app/QuickSearchBox.apk
system/app/QuickSearchBox.odex
system/app/PrintSpooler.apk
system/app/PrintSpooler.odex
system/app/PicoTts.apk
system/app /PicoTts.odex
system/app/Photable.apk
system/app/Photable.odex
system/app/PhaseBeam.apk
system/app/PhaseBeam.odex
system/app/NoiseField.apk
system/app/NoiseField.odex
system/app/OpenWnn.apk
system /app/OpenWnn.odex
system/app/PinyinIME.apk
system/app/PinyinIME.odex
system/app/MagicSmokeWallpapers.apk
system/app/MagicSmokeWallpapers.odex
system/app/WAPPushManager.apk
system/app/WAPPushManager.odex
system/ app/VisualizationWallpapers.apk
system/app/VisualizationWallpapers.odex
system/priv-app/BackupRestoreConfirmation.apk
system/priv-app/Backup/RestoreConfirmation.odex
system/priv-app/Contacts.apk
system/priv-app/Contacts.odex
system/priv-app/ContactsProvider.apk
system/priv-app/ContactsProvider.odex
system/priv-app/Dialer.apk
system/priv-app/Dialer.odex
system/priv-app/Mms.apk
system/priv-app /Mms.odex
system/priv-app/SharedStorageBackup.apk
system/priv-app/SharedStorage/Backup.odex
system/priv-app/VoiceDialer.apk
system/priv-app/VoiceDialer.odex
system/priv-app/FusedLocation. apk
system/priv-app/FusedLocation.odex
system/priv-app/InputDevices.apk
system/priv-app/InputDevices.odex
system/priv-app/ProxyHandler.apk
system/priv-app/ProxyHandler.odex
system/priv- app/OneTimeInitializer.apk
system/priv-app/OneTimeInitializer.odex
system/priv-app/TeleService.apk
system/priv-app/TeleSercice.odex
Android 5.1.1
/system/app/CaptivePortalLogin
/system/app/com.baidu.input
/system/app/HTMLViewer
/system/app/via
/system/app/PicoTts
/system/app/PacProcessor
/system/priv-app/Contacts
/system /priv-app/ContactsProvider
/system/priv-app/Dialer
/system/priv-app/SharedStorageBackup
/system/priv-app/MmsService
/system/priv-app/FusedLocation
/system/priv-app/ProxyHandler
/system/priv -app/InputDevices
/system/priv-app/Telecom
/system/priv-app/TelephonyProvider
/system/priv-app/TeleService
Android 7.1.2
/system/app/BasicDreams
/system/app/CaptivePortalLogin
/system/app/CtsShimPrebuilt
/system/app/WallpaperBackup
/system/app/via
/system/app/PrintRecommendationService
/system/app/PhotoTable
/system/app/PacProcessor
/system /app/OpenWnn
/system/app/iflyime
/system/app/HTMLViewer
/system/priv-app/BackupRestoreConfirmation
/system/priv-app/BlockedNumberProvider
/system/priv-app/CtsShimPrivPrebuilt
/system/priv-app/StorageManager
/system /priv-app/SharedStorageBackup
/system/priv-app/TeleService
/system/priv-app/TelephonyProvider
/system/priv-app/Telecom
/system/priv-app/OneTimeInitializer
/system/priv-app/InputDevices
/system/priv-app/FusedLocation
/system/priv-app/ProxyHandler
Other garbage:
- /system/tts (Android 7.1.2 speech synthesizer)
- /system/xbin/dexlist (garbage file)
- /system/etc/NOTICE.html.gz (Android Licenses)
- /system/etc/event-log-tags (Something strange)
Warning:
Before you are sharing your rom, make sure to delete data folder since it may contain sensitive data. It is important you DO NOT store any sensitive data in VMOS whatsoever. I'm not responsible if your data got stolen
Installing ROM:
To install your custom ROM, click on 3 dots and choose Import local ROM. Use Rec the VM (Restore) if you want to restore backed up ROM from /storage/emulated/0/vmospro/backup with full personal data
Choose a file
Last edited: