I believe the innerClasses is stripped by Proguard during the building process of APK.
The innerClasses is only a relationship, it is simple to recover.
1. if class names are not obfuscated, the name of inner class is separated by the '$' of its outter class. but in most cases, the names are also stripped by Proguard.
2. The fist argument of a innerClass constructor is its outter class
3. Inner class can call private method of outter class in java syntax, and a SYNTHETIC flagged method is generated for bridge the invocation.
BTW, have try the fernflower decompiler, the one integrated in Intellij IDEA. In my memory it has a better support for innerClasses.