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

Android升级targetSdkVersion至29后出现com.gu.option.Option类找不到错误

问题原因

升级targetSdkVersion到29后触发了Android的明文HTTP请求限制:Android 9(API 28)及以上系统默认禁止APP发起明文HTTP请求,同时对应高版本Android Gradle插件也会拦截HTTP类型的maven仓库请求。你配置的guardian maven仓库用的是HTTP地址,构建时无法正常拉取com.gu:option:1.3依赖,本地测试因为有历史缓存所以可正常运行,但上传Google Play的构建包没有对应缓存,最终运行时找不到类抛出异常。

解决方案
  • 修改项目级gradle配置中的仓库地址,将HTTP协议更换为HTTPS:
    替换原有配置
    maven { url 'http://guardian.github.com/maven/repo-releases' }
    
    为
    maven { url 'https://guardian.github.com/maven/repo-releases' }
    
  • 清理本地构建缓存:
    点击Android Studio顶部菜单栏 File -> Invalidate Caches / Restart,选择 Invalidate and Restart 重启IDE,之后执行 Build -> Clean Project 再执行 Rebuild Project,清除历史依赖缓存后重新拉取依赖。
  • 验证打包结果:
    本地打release包后,通过Android Studio的 Build -> Analyze APK 功能打开生成的APK,检查dex文件中是否存在com.gu.option.Option类,确认存在后再上传Google Play即可。
备选方案

如果修改仓库地址后仍无法正常拉取依赖,可以直接将option-1.3.jar下载到项目的app/libs目录下,在app级gradle的dependencies中添加如下配置即可脱离远程仓库依赖:

implementation files('libs/option-1.3.jar')

内容的提问来源于stack exchange,提问作者G.Ho

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 10:39:03