Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[core] Enum is converted to a class with static fields #1699

Open
bagipro opened this issue Oct 8, 2022 · 0 comments
Open

[core] Enum is converted to a class with static fields #1699

bagipro opened this issue Oct 8, 2022 · 0 comments
Labels
bug Core Issues in jadx-core module

Comments

@bagipro
Copy link
Collaborator

bagipro commented Oct 8, 2022

Hey!

After 683c2df commit I see that an enum is being converted to a class

Before the commit:

package com.sec.ims.volte2.data;
public enum VolteConstants$AudioCodecType {
    AUDIO_CODEC_NONE("NONE"),
    AUDIO_CODEC_AMRWB("AMR-WB"),
    AUDIO_CODEC_AMRNB("AMR-NB"),
    AUDIO_CODEC_EVSNB("EVS-NB"),
    AUDIO_CODEC_EVSWB("EVS-WB"),
    AUDIO_CODEC_EVSSWB("EVS-SWB"),
    AUDIO_CODEC_EVSFB("EVS-FB"),
    AUDIO_CODEC_EVS("EVS");
    
    private static final Map<String, VolteConstants$AudioCodecType> stringToEnum = new HashMap();
    private final String mCodec;

    static {
        VolteConstants$AudioCodecType[] values;
        for (VolteConstants$AudioCodecType volteConstants$AudioCodecType : values()) {
            stringToEnum.put(volteConstants$AudioCodecType.toString(), volteConstants$AudioCodecType);
        }
    }

    VolteConstants$AudioCodecType(String str) {
        this.mCodec = str;
    }

    @Override
    public String toString() {
        return this.mCodec;
    }
}

Now:

package com.sec.ims.volte2.data;
public final class VolteConstants$AudioCodecType {
    private static final VolteConstants$AudioCodecType[] $VALUES;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_AMRNB;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_AMRWB;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_EVS;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_EVSFB;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_EVSNB;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_EVSSWB;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_EVSWB;
    public static final VolteConstants$AudioCodecType AUDIO_CODEC_NONE;
    private static final Map<String, VolteConstants$AudioCodecType> stringToEnum;
    private final String mCodec;

    public static VolteConstants$AudioCodecType valueOf(String str) {
        return (VolteConstants$AudioCodecType) Enum.valueOf(VolteConstants$AudioCodecType.class, str);
    }

    public static VolteConstants$AudioCodecType[] values() {
        return (VolteConstants$AudioCodecType[]) $VALUES.clone();
    }

    static {
        VolteConstants$AudioCodecType[] values;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType = new VolteConstants$AudioCodecType("AUDIO_CODEC_NONE", 0, "NONE");
        AUDIO_CODEC_NONE = volteConstants$AudioCodecType;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType2 = new VolteConstants$AudioCodecType("AUDIO_CODEC_AMRWB", 1, "AMR-WB");
        AUDIO_CODEC_AMRWB = volteConstants$AudioCodecType2;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType3 = new VolteConstants$AudioCodecType("AUDIO_CODEC_AMRNB", 2, "AMR-NB");
        AUDIO_CODEC_AMRNB = volteConstants$AudioCodecType3;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType4 = new VolteConstants$AudioCodecType("AUDIO_CODEC_EVSNB", 3, "EVS-NB");
        AUDIO_CODEC_EVSNB = volteConstants$AudioCodecType4;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType5 = new VolteConstants$AudioCodecType("AUDIO_CODEC_EVSWB", 4, "EVS-WB");
        AUDIO_CODEC_EVSWB = volteConstants$AudioCodecType5;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType6 = new VolteConstants$AudioCodecType("AUDIO_CODEC_EVSSWB", 5, "EVS-SWB");
        AUDIO_CODEC_EVSSWB = volteConstants$AudioCodecType6;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType7 = new VolteConstants$AudioCodecType("AUDIO_CODEC_EVSFB", 6, "EVS-FB");
        AUDIO_CODEC_EVSFB = volteConstants$AudioCodecType7;
        VolteConstants$AudioCodecType volteConstants$AudioCodecType8 = new VolteConstants$AudioCodecType("AUDIO_CODEC_EVS", 7, "EVS");
        AUDIO_CODEC_EVS = volteConstants$AudioCodecType8;
        $VALUES = new VolteConstants$AudioCodecType[]{volteConstants$AudioCodecType, volteConstants$AudioCodecType2, volteConstants$AudioCodecType3, volteConstants$AudioCodecType4, volteConstants$AudioCodecType5, volteConstants$AudioCodecType6, volteConstants$AudioCodecType7, volteConstants$AudioCodecType8};
        stringToEnum = new HashMap();
        for (VolteConstants$AudioCodecType volteConstants$AudioCodecType9 : values()) {
            stringToEnum.put(volteConstants$AudioCodecType9.toString(), volteConstants$AudioCodecType9);
        }
    }

    private VolteConstants$AudioCodecType(String str, int i, String str2) {
        this.mCodec = str2;
    }

    @Override
    public String toString() {
        return this.mCodec;
    }
}

APK is the same: https://drive.google.com/file/d/1XBpFGkIORvQkPu8sYaWFpSZ1ZI87QpxR/view?usp=sharing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Core Issues in jadx-core module
Projects
None yet
Development

No branches or pull requests

1 participant