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

发送OneSignal推送通知时Android应用崩溃问题求助

解决OneSignal推送后App崩溃的AbstractMethodError问题

嘿,这个问题我之前碰到过好几次,根源就是Firebase组件依赖版本不兼容,再加上你没配置Firebase必需的Google Services插件,导致Firebase Messaging Service的方法找不到正确实现,才触发了这个崩溃。给你一步步拆解修复方案:

第一步:补上Google Services插件(最关键的一步!)

你的项目里完全没配置Firebase必备的Google Services插件,这会导致Firebase的依赖和配置无法正确生效。

  • 项目级build.gradle:在buildscript的dependencies里加上这行:
buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0-alpha09'
        // 新增Google Services插件依赖
        classpath 'com.google.gms:google-services:4.3.15'
    }
}
  • 模块级build.gradle:把这行放在文件的最后一行:
// 必须放在最后,用来处理Firebase的配置
apply plugin: 'com.google.gms.google-services'

第二步:统一Firebase依赖版本

你现在用的firebase-ads:15.0.1版本太老了,和OneSignal 3.9.x依赖的Firebase组件版本冲突。有两种解决方式:

方式一:升级Firebase Ads到兼容版本

直接把firebase-ads的版本换成和OneSignal兼容的,比如:

implementation 'com.google.firebase:firebase-ads:19.8.0'

方式二:排除OneSignal中的重复Firebase依赖

如果不想升级,也可以让OneSignal不要自带Firebase依赖,用你项目里的版本:

implementation('com.onesignal:OneSignal:[3.9.1, 3.99.99]') {
    exclude group: 'com.google.firebase'
}

第三步:同步并重建项目

做完上面的修改后:

  • 点击Android Studio顶部的Sync Now按钮同步Gradle配置
  • 执行Build > Clean Project,再执行Build > Rebuild Project,彻底清理旧的构建缓存

为啥会出现这个错误?

简单说,AbstractMethodError在Firebase集成里大多是这几个原因:

  • Firebase组件和Google Play Services的版本没对齐
  • 缺少Google Services插件,导致Firebase的配置和依赖没正确初始化
  • 多个依赖库引入了不同版本的Firebase组件,出现了冲突

内容的提问来源于stack exchange,提问作者akkk

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:06:43