java - 为什么我的 android 应用程序一直停止?
问题描述
此应用程序只有前端工作。我非常努力地工作,但在运行时它一直停止。这是堆栈跟踪
2021-05-26 07:13:37.288 3836-3836/? I/le.instagramap: Late-enabling -Xcheck:jni
2021-05-26 07:13:37.337 3836-3836/? E/le.instagramap: Unknown bits set in runtime_flags: 0x8000
2021-05-26 07:13:37.384 3836-3836/? D/ActivityThread: setConscryptValidator
2021-05-26 07:13:37.384 3836-3836/? D/ActivityThread: setConscryptValidator - put
2021-05-26 07:13:37.859 3836-3836/com.example.instagramapp I/Perf: Connecting to perf service.
2021-05-26 07:13:38.427 3836-3836/com.example.instagramapp D/PhoneWindow: forceLight changed to true [] from com.android.internal.policy.PhoneWindow.updateForceLightNavigationBar:4238 com.android.internal.policy.DecorView.updateColorViews:1510 com.android.internal.policy.PhoneWindow.dispatchWindowAttributesChanged:3216 android.view.Window.setFlags:1148 com.android.internal.policy.PhoneWindow.generateLayout:2444
2021-05-26 07:13:38.429 3836-3836/com.example.instagramapp I/MultiWindowDecorSupport: updateCaptionType >> DecorView@3d08565[], isFloating: false, isApplication: true, hasWindowDecorCaption: false, hasWindowControllerCallback: true
2021-05-26 07:13:38.429 3836-3836/com.example.instagramapp D/MultiWindowDecorSupport: setCaptionType = 0, DecorView = DecorView@3d08565[]
2021-05-26 07:13:38.449 3836-3836/com.example.instagramapp W/le.instagramap: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (greylist, reflection, allowed)
2021-05-26 07:13:38.450 3836-3836/com.example.instagramapp W/le.instagramap: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (greylist, reflection, allowed)
2021-05-26 07:13:38.465 3836-3836/com.example.instagramapp D/AndroidRuntime: Shutting down VM
2021-05-26 07:13:38.468 3836-3836/com.example.instagramapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.instagramapp, PID: 3836
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.instagramapp/com.example.instagramapp.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.appcompat.app.ActionBar.setTitle(java.lang.CharSequence)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3556)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3703)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2216)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7948)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void androidx.appcompat.app.ActionBar.setTitle(java.lang.CharSequence)' on a null object reference
at androidx.navigation.ui.ActionBarOnDestinationChangedListener.setTitle(ActionBarOnDestinationChangedListener.java:48)
at androidx.navigation.ui.AbstractAppBarOnDestinationChangedListener.onDestinationChanged(AbstractAppBarOnDestinationChangedListener.java:103)
at androidx.navigation.NavController.addOnDestinationChangedListener(NavController.java:233)
at androidx.navigation.ui.NavigationUI.setupActionBarWithNavController(NavigationUI.java:227)
at com.example.instagramapp.MainActivity.onCreate(MainActivity.java:36)
at android.app.Activity.performCreate(Activity.java:7955)
at android.app.Activity.performCreate(Activity.java:7944)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1307)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3531)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3703)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2216)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:7948)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
请帮我解决问题。我最近开始了 android 开发,如果这个问题没有通过网站的标准,我很抱歉。
解决方案
您应该调用 getSupportActionBar()。
这是一篇参考文章:
Android 错误 [尝试在空对象引用上调用虚拟方法 'void android.app.ActionBar']
我最近也涉足 Android 开发,提醒一下,如果您的模拟器开始出现问题,请确保擦除其数据。转到 AKD 管理器,单击最右侧的箭头,然后选择擦除数据。
推荐阅读
- code-coverage - cypress 代码覆盖中的项目相对路径
- datetime - 使用 opencsv 从 csv 解析 OffsetDateTime:2021-05-09T12:23:55+0100
- c - Openssl 从 C 证书包中挑选证书(.pem 格式)
- java - Android NLTM 身份验证
- javascript - 为什么我在编辑 html 文件时收到 JS IntelliSense 建议
- r - 有没有办法根据条件将相关变量折叠成单个变量?
- javascript - 使用 Flask 和 FileSaver 未正确发送 Gzip 数据
- javascript - 使用JS向数组内的对象添加另一个键和值
- c - 使用 SWIG 使用预处理器宏将原始值定义为函数参数
- java - Spring Boot WebMvcTest 为 GET 方法返回 302 而不是 401