This is how to disable signature checks using seo's code that has been around forever, now for the EVO LTE on ICS.
Gonna loosely quote SteelH's [How To] post opener:
This reference guide is to tell you what to edit to disable Signature Checks for the EVO 4G LTE in Services.jar. It is not an all-inclusive how-to on adb, decompiling/recompiling apks, etc. There are already several very good sources right here on XDA for that information.
Decompile Services.jar and look for \com\android\server\pm\PackageManagerService.smali
Do a whole-sale .method change and replace the entire .method with this one:
p.s. you will notice that there is no .line numbers and the .registers are now .locals, that is because I use a different baksmali cmd than what is the norm. I use:
notice the extra -l -b
the -l(thats a lower case L not and upper case i) changes the .registers to .locals and the -b removes the smali debugging stuff that is not needed. Most custom rom builders know about this edits but this is for the average user that would like to make edits on their own and want to make edits to system/apps.
One_Love
Gonna loosely quote SteelH's [How To] post opener:
This reference guide is to tell you what to edit to disable Signature Checks for the EVO 4G LTE in Services.jar. It is not an all-inclusive how-to on adb, decompiling/recompiling apks, etc. There are already several very good sources right here on XDA for that information.
Decompile Services.jar and look for \com\android\server\pm\PackageManagerService.smali
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
.locals 7
if-nez p0, :cond_8
if-nez p1, :cond_6
const/4 v6, 0x1
:goto_5
return v6
:cond_6
const/4 v6, -0x1
goto :goto_5
:cond_8
if-nez p1, :cond_c
const/4 v6, -0x2
goto :goto_5
:cond_c
new-instance v3, Ljava/util/HashSet;
invoke-direct {v3}, Ljava/util/HashSet;-><init>()V
move-object v0, p0
array-length v2, v0
const/4 v1, 0x0
:goto_14
if-ge v1, v2, :cond_1e
aget-object v5, v0, v1
invoke-virtual {v3, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
add-int/lit8 v1, v1, 0x1
goto :goto_14
:cond_1e
new-instance v4, Ljava/util/HashSet;
invoke-direct {v4}, Ljava/util/HashSet;-><init>()V
move-object v0, p1
array-length v2, v0
const/4 v1, 0x0
:goto_26
if-ge v1, v2, :cond_30
aget-object v5, v0, v1
invoke-virtual {v4, v5}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
add-int/lit8 v1, v1, 0x1
goto :goto_26
:cond_30
invoke-virtual {v3, v4}, Ljava/util/HashSet;->equals(Ljava/lang/Object;)Z
move-result v6
if-eqz v6, :cond_38
const/4 v6, 0x0
goto :goto_5
:cond_38
const/4 v6, -0x3
goto :goto_5
.end method
Code:
.method static compareSignatures([Landroid/content/pm/Signature;[Landroid/content/pm/Signature;)I
.locals 7
const/4 v0, 0x0
return v0
.end method
Code:
java -Xmx1024M -jar baksmali.jar -l -b -o smali/ classes.dex
the -l(thats a lower case L not and upper case i) changes the .registers to .locals and the -b removes the smali debugging stuff that is not needed. Most custom rom builders know about this edits but this is for the average user that would like to make edits on their own and want to make edits to system/apps.
One_Love