Closed XhstormR closed 2 years ago
fun main() { var dexToJavaName = "android.app.Activity" var javaToDexName = "" repeat(10){ javaToDexName = ReflectionUtils.javaToDexName(dexToJavaName) println(javaToDexName) dexToJavaName = ReflectionUtils.dexToJavaName(javaToDexName) println(dexToJavaName) } }
Output:
Landroid/app/Activity; android.app.Activit Landroid/app/Activit; android.app.Activi Landroid/app/Activi; android.app.Activ Landroid/app/Activ; android.app.Acti Landroid/app/Acti; android.app.Act Landroid/app/Act; android.app.Ac Landroid/app/Ac; android.app.A Landroid/app/A; android.app. Landroid/app/; android.app Landroid/app; android.ap
I think the last return code:
return dexName.replace('/', '.').substring(1, dexName.length()-2);
should be:
return dexName.replace('/', '.').substring(1, dexName.length()-1);
Fixed by https://github.com/JesusFreke/smali/pull/829
Output:
I think the last return code:
should be: