java - Android 应用程序崩溃并出现错误 java.lang.RuntimeException : Unable to instantiate activity ComponentInfo

标签 java android

我正在开发一个Android应用程序。当我尝试在模拟器上运行它时,它崩溃了。这是我的第一个 Android 应用程序,我无法找出错误原因。谁能指出错误吗?

日志猫

    Shutting down VM
FATAL EXCEPTION: main
 Process: io.github.ishankgulati.breakout, PID: 3589
 java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{io.github.ishankgulati.breakout/io.github.ishankgulati.breakout.BreakoutGame}: java.lang.IllegalAccessException: void io.github.ishankgulati.breakout.BreakoutGame.<init>() is not accessible from java.lang.Class<android.app.Instrumentation>
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2327)
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
     at android.app.ActivityThread.-wrap11(ActivityThread.java)
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
     at android.os.Handler.dispatchMessage(Handler.java:102)
     at android.os.Looper.loop(Looper.java:148)
     at android.app.ActivityThread.main(ActivityThread.java:5417)
     at java.lang.reflect.Method.invoke(Native Method)
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
  Caused by: java.lang.IllegalAccessException: void io.github.ishankgulati.breakout.BreakoutGame.<init>() is not accessible from java.lang.Class<android.app.Instrumentation>
     at java.lang.Class.newInstance(Native Method)
     at android.app.Instrumentation.newActivity(Instrumentation.java:1067)
     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2317)
     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
     at android.app.ActivityThread.-wrap11(ActivityThread.java) 
     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
     at android.os.Handler.dispatchMessage(Handler.java:102) 
     at android.os.Looper.loop(Looper.java:148) 
     at android.app.ActivityThread.main(ActivityThread.java:5417) 
     at java.lang.reflect.Method.invoke(Native Method) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
12-29 19:10:34.689 3589-3589/? I/Process: Sending signal. PID: 3589 SIG: 9

你可以看看我的项目here .

上述问题已解决,但应用程序仍然崩溃。

日志猫

I/art: Not late-enabling -Xcheck:jni (already on)
I/art: Late-enabling JIT
I/art: JIT created with code_cache_capacity=2MB compile_threshold=1000
W/System: ClassLoader referenced unknown path: /data/app/io.github.ishankgulati.breakout-1/lib/x86
E/WVMExtractor: Failed to open libwvm.so: dlopen failed: library "libwvm.so" not found
I/OMXClient: Using client-side OMX mux.
D/MediaPlayer: setSubtitleAnchor in MediaPlayer
W/art: Suspending all threads took: 33.410ms
I/OMXClient: Using client-side OMX mux.
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
Process: io.github.ishankgulati.breakout, PID: 2303
java.lang.RuntimeException: Unable to start activity ComponentInfo{io.github.ishankgulati.breakout/io.github.ishankgulati.breakout.BreakoutGame}: java.lang.NullPointerException: Attempt to write to field 'float android.graphics.RectF.left' on a null object reference
   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
   at android.app.ActivityThread.-wrap11(ActivityThread.java)
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
   at android.os.Handler.dispatchMessage(Handler.java:102)
   at android.os.Looper.loop(Looper.java:148)
   at android.app.ActivityThread.main(ActivityThread.java:5417)
   at java.lang.reflect.Method.invoke(Native Method)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.NullPointerException: Attempt to write to field 'float android.graphics.RectF.left' on a null object reference
   at io.github.ishankgulati.breakout.MainMenu.<init>(MainMenu.java:33)
   at io.github.ishankgulati.breakout.BreakoutGame$BreakoutView.<init>(BreakoutGame.java:84)
   at io.github.ishankgulati.breakout.BreakoutGame$BreakoutView.<init>(BreakoutGame.java:51)
   at io.github.ishankgulati.breakout.BreakoutGame.onCreate(BreakoutGame.java:29)
   at android.app.Activity.performCreate(Activity.java:6237)
   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
   at android.app.ActivityThread.-wrap11(ActivityThread.java) 
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
   at android.os.Handler.dispatchMessage(Handler.java:102) 
   at android.os.Looper.loop(Looper.java:148) 
   at android.app.ActivityThread.main(ActivityThread.java:5417) 
   at java.lang.reflect.Method.invoke(Native Method) 
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 

最佳答案

您的BreakoutGame

public class BreakoutGame extends Activity{

正在覆盖链接其可见性的默认构造函数。这导致了异常。不要这样做。您想要在构造函数中执行的每个初始化都可以在框架调用的回调之一中完成。例如onCreate

关于java - Android 应用程序崩溃并出现错误 java.lang.RuntimeException : Unable to instantiate activity ComponentInfo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34513228/

相关文章:

android - 如何跨 Activity 更改背景颜色

android - 我的简单 android Activity 如何泄漏内存?

android - css 文件不适用于生成的 html

android - 如何在 Android 原生应用中添加 Power BI 报表

java - JPA 查找方法持久化数据

java - 用于 STEP 的 Java API (p21) - 创建符合 STEP 标准的文件

java - SPOJ 上的 PrimeNumber 生成器运行时错误

java - 一个类中有多个 ActionListener

java - fragment 中的 RecyclerView - 没有连接适配器,跳过布局

java - 测试动态 Web 应用程序的并发用户