You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio Firebase聊天室运行崩溃:找不到FloatingActionButton类求助

Firebase聊天室项目启动闪退问题解决

问题描述

我是Android Studio新手,正在开发基于Firebase的聊天室项目。每次运行项目都会闪退无响应,报错信息如下:

Process: com.example.chatroomdemo3, PID: 6010
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.chatroomdemo3/com.example.chatroomdemo3.MainActivity}: android.view.InflateException: Binary XML file line #14 in com.example.chatroomdemo3:layout/activity_main: Binary XML file line #14 in com.example.chatroomdemo3:layout/activity_main: Error inflating class android.support.design.widget.FloatingActionButton
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3449)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
    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:2066)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:223)
    at android.app.ActivityThread.main(ActivityThread.java:7656)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
 Caused by: android.view.InflateException: Binary XML file line #14 in com.example.chatroomdemo3:layout/activity_main: Binary XML file line #14 in com.example.chatroomdemo3:layout/activity_main: Error inflating class android.support.design.widget.FloatingActionButton
 Caused by: android.view.InflateException: Binary XML file line #14 in com.example.chatroomdemo3:layout/activity_main: Error inflating class android.support.design.widget.FloatingActionButton
 Caused by: java.lang.ClassNotFoundException: android.support.design.widget.FloatingActionButton
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:454)
    at android.view.LayoutInflater.createView(LayoutInflater.java:813)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1004)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:959)
    at android.view.LayoutInflater.rInflate(LayoutInflater.java:1121)
    at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:1082)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:680)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:532)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:479)
    at androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:710)
    at androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:195)
    at com.example.chatroomdemo3.MainActivity.onCreate(MainActivity.java:32)
    at android.app.Activity.performCreate(Activity.java:7994)
    at android.app.Activity.performCreate(Activity.java:7978)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3422)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601)
    at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
    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:2066)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:223)
    at android.app.ActivityThread.main(ActivityThread.java:7656)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
2022-09-20 17:50:29.871 6010-6010/com.example.chatroomdemo3 E/AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.design.widget.FloatingActionButton" on path: DexPathList[[zip file "/data/app/~~ZjEoxav74b-XtewDIq5jeQ==/com.example.chatroomdemo3-pbmB3qrSrSLhR8HFlxAleA==/base.apk"],nativeLibraryDirectories=[/data/app/~~ZjEoxav74b-XtewDIq5jeQ==/com.example.chatroomdemo3-pbmB3qrSrSLhR8HFlxAleA==/lib/x86, /system/lib, /system_ext/lib]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:207)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        ... 28 more
2022-09-20 17:50:29.900 6010-6010/com.example.chatroomdemo3 I/Process: Sending signal. PID: 6010 SIG: 9

问题原因

报错核心是ClassNotFoundException——找不到旧版Support库的android.support.design.widget.FloatingActionButton类。你的项目已经使用AndroidX(报错里出现了androidx.appcompat.app.AppCompatActivity),但布局文件仍引用旧版Support库控件,导致类加载失败。

解决方案

  • 修改布局文件控件类名
    打开activity_main.xml,找到第14行的FloatingActionButton,将类名替换为AndroidX版本:
<com.google.android.material.floatingactionbutton.FloatingActionButton
    <!-- 原有属性保持不变 -->
/>
  • 添加Material组件依赖
    打开模块级build.gradle文件(通常为app/build.gradle),检查并添加Material组件依赖:
dependencies {
    // 其他依赖保留
    implementation 'com.google.android.material:material:1.9.0' // 可替换为最新版本号
}
  • 同步并重建项目
  1. 点击Android Studio工具栏的「Sync Project with Gradle Files」按钮同步依赖。
  2. 执行「Build -> Clean Project」清理项目。
  3. 执行「Build -> Rebuild Project」重新构建项目。

完成以上步骤后重新运行项目,即可解决闪退问题。

内容的提问来源于stack exchange,提问作者極致狂人

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 23:20:26