APKEditor icon indicating copy to clipboard operation
APKEditor copied to clipboard

Handle call_site_numbers incorrectly

Open zjw2017 opened this issue 1 year ago • 2 comments

Describe the bug When I tried to decompile the Settings of Xiaomi HyperOS OS1.1.4.0.VNCNXM.BETA using APKEditor, I found that APKEditor couldn't handle call_site_numbers properly.

To Reproduce Steps to reproduce the behavior:

  1. Used version : APKEditor 1.4.1
  2. Operating system : Android 15
  3. Command : java -jar APKEditor.jar d -f -i /data/tmp/Settings.apk -o /data/tmp/settings

Log/Stacktrace Null

Used apk file Settings of Xiaomi HyperOS OS1.1.4.0.VNCNXM.BETA

Additional context The abnormal method can be found at smali/classes3/com/android/settings/notification/modes/IconOptionsProvider$IconInfo.smali.

When using apktool, it's like this

.method public final equals(Ljava/lang/Object;)Z
    .registers 2

    .line 28
    invoke-custom {p0, p1}, call_site_0("equals", (Lcom/android/settings/notification/modes/IconOptionsProvider$IconInfo;Ljava/lang/Object;)Z, Lcom/android/settings/notification/modes/IconOptionsProvider$IconInfo;, "resId;description", instance-get@Lcom/android/settings/notification/modes/IconOptionsProvider$IconInfo;->resId:I, instance-get@Lcom/android/settings/notification/modes/IconOptionsProvider$IconInfo;->description:Ljava/lang/String;)@Ljava/lang/runtime/ObjectMethods;->bootstrap(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/TypeDescriptor;Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/invoke/MethodHandle;)Ljava/lang/Object;

    move-result p0

    return p0
.end method

When using APKEditor, it's like this

.method public final equals(Ljava/lang/Object;)Z
    .locals 0

    .line 28
    #disallowed odex opcode
    #iput-object-volatile p0, p2, Landroid/R$styleable;->SettingInjectorService:[I
    nop

    return-wide p0

    move-result p0

    return p0
.end method

I sincerely request developers to be aware of this issue and, if possible, provide me with a solution. Thank you very much!

zjw2017 avatar Oct 05 '24 06:10 zjw2017

Fixed with :https://github.com/REAndroid/APKEditor/commit/4a4b91bddfb025a3f19c2abda3adcc3188839d94

Thank you for reporting

REAndroid avatar Oct 05 '24 18:10 REAndroid

I have downloaded and tested the new artifact and everything worked so perfectly. Thanks for fixing this Bug with such amazing speed. Thanks a lot!

zjw2017 avatar Oct 05 '24 19:10 zjw2017