首页 > 解决方案 > 无法解析 com.google.android.gms.ads.MobileAds

问题描述

我有一个使用 AdMob 的小型 Android 应用。它已经工作了一段时间。最近,我尝试添加一些新功能,同时将所有使用的库升级到最新版本。但我对 AdMobs 有疑问。我确实放了

implementation 'com.google.android.gms:play-services-ads:15.0.1'

进入应用程序 build.gradle,

maven { url "https://maven.google.com" }

进入项目build.gradle,添加对manfest文件的更改(谷歌开发者网站建议的),做了几个清理/构建和无效缓存/重新启动,检查了谷歌播放服务的SDK管理器,都没有结果,AndroidStudio无法解决com.google.android.gms.ads.MobileAds 和其他 AdMobs 类。对于所有的陈述,如

import com.google.android.gms.ads.MobileAds;

AndroidStudio 标记为无法解决,例如“无法解析符号'MobileAds'”。

更令人困惑的是,应用程序可以构建和部署,Gradle 说没有错误,应用程序运行良好,并且广告按需要显示。但是,Logcat 中有一些警告,例如:

等等

因此,如果不确定它是否按我预期的方式运行,我就无法发布升级后的应用程序。

我的工作环境是 Linux/Fedora27,AndroidStudio 3.1.4,作为虚拟设备我使用 Genymotion 2.12.2。

标签: androidadmob

解决方案


我想我已经解决了。

不知何故,我认为这是 ItelliJ Idea 问题,所以我四处搜索,发现一些类似的主题给了我一个线索。它奏效了。

项目文件夹下方有一个隐藏文件夹,名为.idea. 和libraries下面的文件夹。完整的 .xml 文件 gradle 通过构建过程制作。我把它们都删除了!

重新启动 Android Studio,一切顺利。所以,去

<Project>/.idea/libraries

并删除它的所有内容。我相信一些不兼容的 gradle 版本引起了麻烦。Clean 和/或 Invalidate Cache 是不够的,因此解决方案是粗暴删除。


推荐阅读