Both of them aren't caused by apktool nor smali, but what you see is actually a real content of the application.
First are anonymous classes - feature of Java. If you create e.g. inner Foo class in the outer Bar class then java compilator will generate a regular class with Bar$Foo name. And if you instantiate an anonymous class, its inner name will be auto-generated as next available number.
Second is caused by obfuscators, tools used by application developers - most probably Proguard. It replaces all class, method and field names with "a", "b", "c", etc. to make the code much harder to read.
--
You received this message because you are subscribed to the Google Groups "apktool" group.
To unsubscribe from this group and stop receiving emails from it, send an email to apktool+u...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
It depends on the configuration of the obfuscator. In Android all included libraries are merged into the code of the application itself, so nearly everything can be obfuscated. But don't have to, usually not all information is obfuscated. For example names of some classes can't be obfuscated, because they're referenced by name in XML files. Sometimes you will see the structure of class packages and sometimes almost all classes will be moved to the root. It's all about the configuration.