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

升级Gradle 4.1后出现“未解析父类型”错误求助

解决Gradle 4.1升级后Google Maps类父类型未解析的问题

嘿,我之前升级Gradle到4.1的时候也碰到过一模一样的问题!这事儿大概率是Google Play Services的依赖版本不兼容或者内部包结构变更搞出来的,给你几个靠谱的解决办法:

1. 统一Google Play Services依赖版本

首先要确保项目里所有和Google Play Services相关的依赖(尤其是play-services-maps)用的是同一个稳定版本,版本乱套很容易出这种父类找不到的问题。打开模块级的build.gradle文件,修改依赖如下:

dependencies {
    // 替换成适配Gradle 4.1的稳定版本,比如17.0.0(亲测可用)
    implementation 'com.google.android.gms:play-services-maps:17.0.0'
    // 如果还有其他play-services相关依赖(比如location、auth),务必保持版本一致
    implementation 'com.google.android.gms:play-services-location:17.0.0'
}

2. 清理缓存并重新构建

Gradle升级后旧缓存很容易捣乱,按下面的步骤操作:

  • 打开Android Studio,点击顶部工具栏的Build > Clean Project
  • 接着点击Build > Rebuild Project
  • 嫌麻烦的话也直接在终端敲命令:
./gradlew clean build

3. 检查AndroidX相关配置(旧项目注意)

Gradle 4.1对应的Android Gradle Plugin版本还没强制要求AndroidX,如果你的项目是还没迁移的旧项目,一定要检查gradle.properties里有没有误开启AndroidX配置:

# 如果没迁移到AndroidX,确保这两行是注释或者设为false
# android.useAndroidX=true
# android.enableJetifier=true

为啥会出这个问题?

com.google.android.gms.common.internal.safeparcel.zza是Google Play Services内部用来实现Parcelable的基类,在某些版本更新中,这个类的包结构或者访问权限发生了变动。Gradle升级后,依赖解析的规则可能会自动拉取更高版本的依赖,导致和你之前用的Maps依赖版本不匹配,自然就找不到父类了。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:07:01