当Wi-Fi开启/关闭时,我正在显示干杯消息,我收到如下错误

时间:2017-01-10 10:06:44

标签: android

当我打开/关闭WI-Fi时,我正在处理显示Toast消息,我收到如下错误:

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.pmap.wifitoast, PID: 29538
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.pmap.wifitoast/com.example.pmap.wifitoast.MainActivity}: java.lang.ClassCastException: com.example.pmap.wifitoast.MainActivity cannot be cast to android.app.Activity
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2250)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2413)
    at android.app.ActivityThread.access$800(ActivityThread.java:155)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1317)
    at android.os.Handler.dispatchMessage(Handler.java:102)
    at android.os.Looper.loop(Looper.java:135)
    at android.app.ActivityThread.main(ActivityThread.java:5343)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700)
 Caused by: java.lang.ClassCastException: com.example.pmap.wifitoast.MainActivity cannot be cast to android.app.Activity
    at android.app.Instrumentation.newActivity(Instrumentation.java:1089)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2240)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2413) 
    at android.app.ActivityThread.access$800(ActivityThread.java:155) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1317) 
    at android.os.Handler.dispatchMessage(Handler.java:102) 
    at android.os.Looper.loop(Looper.java:135) 
    at android.app.ActivityThread.main(ActivityThread.java:5343) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at java.lang.reflect.Method.invoke(Method.java:372) 
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700)

2 个答案:

答案 0 :(得分:0)

这是你的意图的问题。

请在AndroidManifest.xml中添加您的活动。

如果要创建新活动,则应在AndroidManifest.xml中注册

还有另一种获取java.lang.RuntimeException的方法:无法实例化活动ComponentInfo异常,那是您尝试启动的活动是抽象的。

答案 1 :(得分:0)

更新的答案:

似乎您可能在Java代码上传递了应用程序Context而不是Activity Context。 无论您在何处通过,都会通过thisActivityName.this

使用getApplicationContext()Activity_name.this

您收到此异常是因为您无法将应用程序强制转换为Activity,因为Application不是Activity的子类。