我正在开发一个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/