我有一个异常,说我的类名$ a.a()方法是在空对象引用上调用的。我不明白$符号表示什么。我使用Proguard进行映射但是文件被覆盖了,现在我的firebase崩溃日志显示了这条异常消息
Caused by java.lang.NullPointerException: Attempt to invoke interface method 'void com.package.TestClass$a.a()' on a null object reference
com.package.TestClass.h ()
com.package.TestClass.a ()
com.package.TestClass.onStartCommand ()
android.app.ActivityThread.handleServiceArgs (ActivityThread.java:3347)
android.app.ActivityThread.-wrap21 (ActivityThread.java)
android.app.ActivityThread$H.handleMessage (ActivityThread.java:1595)
android.os.Handler.dispatchMessage (Handler.java:102)
android.os.Looper.loop (Looper.java:154)
android.app.ActivityThread.main (ActivityThread.java:6165)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:888)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:778)
答案 0 :(得分:0)
$是一个分隔符,表示存在嵌套类。 您可以在此post中阅读更多信息。
答案 1 :(得分:0)
您可能想看一下这个很好地解释这个问题的答案。 Meaning of the Dollar symbol ($) in the log messages
注意:由于<无法发表评论50声望。