testwhat / SmaliEx

A wrapper to get de-optimized dex from odex/oat/vdex.
527 stars 141 forks source link

Convert back to odex #48

Open elkhawajah opened 7 years ago

elkhawajah commented 7 years ago

Hi,

I have extracted smali files from framework/services.odex, and made a change to compareSignatures in PackageManageService and want to convert back the classes to odex.

I cannot find the steps to do that, and when I try to use smali from original forked repo, it will give me these errors.

I am using smali 2.2b4, should I downgrade ?

elkhawajah:framework ahmad$ java -jar smali-2.2b4.jar ass arm/services/ -o services.dex
arm/services/com/android/server/accessibility/AccessibilityInputFilter.smali[71,37] Error for input '@': Invalid text
arm/services/com/android/server/accessibility/AccessibilityInputFilter.smali[71,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[170,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[170,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[198,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[198,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[202,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[202,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[206,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[206,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[227,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[227,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[234,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[234,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[242,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[242,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[251,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[251,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[257,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[257,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[265,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[265,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[269,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[269,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[278,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[278,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[282,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[282,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[295,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[295,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[303,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[303,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[311,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[311,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[320,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[320,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[330,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[330,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[358,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[358,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[362,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[362,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[366,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[366,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[393,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[393,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[420,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[420,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[424,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[424,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[428,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[428,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[449,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[449,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[456,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[456,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[464,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[464,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[473,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[473,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[479,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[479,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[487,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[487,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[491,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[491,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[500,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[500,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[504,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[504,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[517,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[517,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[525,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[525,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[533,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[533,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[542,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[542,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[552,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[552,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[579,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[579,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[583,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[583,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[587,37] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[587,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/internal/app/ShutdownManager.smali[606,41] Error for input '@': Invalid text
arm/services/com/android/internal/app/ShutdownManager.smali[606,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/accessibility/DisplayAdjustmentUtils.smali[26,37] Error for input '@': Invalid text
arm/services/com/android/server/accessibility/DisplayAdjustmentUtils.smali[26,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/accessibility/ScreenMagnifier.smali[123,37] Error for input '@': Invalid text
arm/services/com/android/server/accessibility/ScreenMagnifier.smali[123,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/accounts/AccountManagerService.smali[237,41] Error for input '@': Invalid text
arm/services/com/android/server/accounts/AccountManagerService.smali[237,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/AlarmManagerService.smali[364,41] Error for input '@': Invalid text
arm/services/com/android/server/AlarmManagerService.smali[364,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityStack$1.smali[42,37] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityStack$1.smali[42,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityStack$1.smali[58,37] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityStack$1.smali[58,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityStack$1.smali[74,37] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityStack$1.smali[74,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityStack$1.smali[90,37] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityStack$1.smali[90,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityStack$1.smali[106,37] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityStack$1.smali[106,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityStack$1.smali[122,37] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityStack$1.smali[122,31] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityManagerService.smali[1158,41] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityManagerService.smali[1158,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityManagerService.smali[1168,41] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityManagerService.smali[1168,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/ActivityManagerService.smali[1256,41] Error for input '@': Invalid text
arm/services/com/android/server/am/ActivityManagerService.smali[1256,35] mismatched input 'vtable' expecting VTABLE_INDEX
arm/services/com/android/server/am/CoreSettingsObserver.smali[60,37] Error for input '@': Invalid text
arm/services/com/android/server/am/CoreSettingsObserver.smali[60,31] mismatched input 'vtable' expecting VTABLE_INDEX
wv1124 commented 5 years ago

java -jar smali.jar assemble ./services.odex-dex/services -o classes.dex success

how to dex -> odex?