无法获取未知属性“PLAY_SERVICES_VERSION”
Posted
技术标签:
【中文标题】无法获取未知属性“PLAY_SERVICES_VERSION”【英文标题】:Could not get unknown property 'PLAY_SERVICES_VERSION' 【发布时间】:2018-07-10 04:49:00 【问题描述】:在我的 ionic 3 应用程序中安装 cordova-plugin-googlemaps 后,我在 ionic 构建中遇到 Could not get unknown property 'PLAY_SERVICES_VERSION' 错误。如果我删除此插件,则构建中不会显示错误。再次添加此插件后显示错误。
ionic cordova 插件添加 cordova-plugin-googlemaps --variable API_KEY_FOR_android="YOUR_ANDROID_API_KEY_IS_HERE"
我用我从谷歌获得的密钥替换了 YOUR_ANDROID_API_KEY_IS_HERE。
与我在另一个应用程序中添加它的方式相同。这里它不起作用
【问题讨论】:
forum.ionicframework.com/t/… 我在添加版本后也尝试过这个错误 - 找不到符号导入 com.google.android.gms.maps.model.MapStyleOptions 【参考方案1】:在 \platforms\android\project.properties 中,仅将 PLAY_SERVICES_VERSION 替换为“+”
com.google.android.gms:play-services-base:+
com.google.android.gms:play-services-ads:+
另一种方式:安装cordova插件自动创建版本
cordova plugin add cordova-android-play-services-gradle-release
【讨论】:
【参考方案2】:如果您使用 PhoneGap 构建构建应用,则需要指定 phonegap-version
,因为这是 PhoneGap 构建的错误。
<widget ...>
<plugin name="cordova-plugin-googlemaps" spec="^2.2.3">
<variable name="API_KEY_FOR_ANDROID" value="(api key)" />
<variable name="API_KEY_FOR_ios" value="(api key)" />
<variable name="PLAY_SERVICES_VERSION" value="11.8.0" />
<variable name="LOCATION_WHEN_IN_USE_DESCRIPTION" value="Show your location on the map" />
<variable name="LOCATION_ALWAYS_USAGE_DESCRIPTION" value="Trace your location on the map" />
</plugin>
<!--
You need to specify cli-7.1.0 or greater version.
https://build.phonegap.com/current-support
-->
<preference name="phonegap-version" value="cli-7.1.0" />
</widget>
https://github.com/mapsplugin/cordova-plugin-googlemaps/tree/3ee006140b4c83d59a6545aa5218fbcdb962cb9b#phonegap-build-settings
【讨论】:
我没有使用 phonegap 构建,现在我通过使用旧版本的 cordova-plugin-googlemaps 解决了这个问题 我找到了最终答案。你的科尔多瓦老了。你需要更新cordova-cli 7.1.0或以上【参考方案3】:遇到了同样的问题。我从这种方法开始:https://github.com/mapsplugin/cordova-plugin-googlemaps/issues/2039
我更改了平台 android 文件夹中的 project.properties 和 build.gradle。将 $PLAY_SERVICES_VERSION 变量替换为 11.8.0+ 并从 config.xml 中删除 PLAY_SERVICES_VERSION 参数
在此之后,我在 Android Studio 的新 SDK 管理器中检查了 google-play-services 的最新更新。
也许最后一步就足够了,但这是我采取的步骤。
编辑:
快速解决方案可以将行 maven url 'https://maven.google.com' 添加到您的 build.gradle
allprojects
repositories
maven url 'https://maven.google.com'
mavenCentral();
jcenter()
【讨论】:
谢谢。虽然没有这个我没有问题,但我将您的建议添加到插件代码中。 github.com/mapsplugin/cordova-plugin-googlemaps/commit/…以上是关于无法获取未知属性“PLAY_SERVICES_VERSION”的主要内容,如果未能解决你的问题,请参考以下文章
无法获取未知属性“PLAY_SERVICES_VERSION”
Android Studio:无法获取未知属性“kotlin_version”
无法为 SigningConfig_Decoratedname=debugY 获取未知属性“RELEASE_STORE_PASSWORD”