无法解析 import com.google.android.gms

我是 Android 开发的新手。通过跟随 本教程我得到了错误 The import com.google.android.gms cannot be resolved当我写入代码到 MainActivity.java:

import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;

通过搜索各种修复方法,我确保尝试了以下方法:

  • 我已经下载了针对特定 API 级别的 Google API Android SDK 管理器。
  • 我选择了 Google API 作为项目构建目标。
  • 我已经添加了 <uses-library android:name="com.google.android.maps" /> 作为 <application>标记的子标记插入到 AndroidManifest.xml中。
  • 我通过选择 Project->Clean...清理了项目并构建了它 从头开始。
  • 我包括了 .jar地图文件,通过右键点击我的项目,去 构建路径并添加外部存档,将其定位在我的 SDK: android-sdk-windows\add-ons\addon_google_apis_google_inc_8\libs\maps

不幸的是,以上这些都无济于事。

212415 次浏览

我选择了 Google API 作为项目构建目标。

这是不相关的,因为这是为地图 V1,您正在尝试使用地图 V2。

包括我。通过右键点击我的项目的地图的 jar 文件,去建立路径和添加外部存档定位在我的 SDK: android-SDK-windows 插件插件 google _ apis _ google _ inc _ 8库地图

这是双重错误。

首先,永远不要手动修改 Android 项目中的构建路径。如果您正在这样做,最好的情况下,您将在运行时崩溃,因为您认为放在项目中的 JAR (通过手动构建路径更改)不在 APK 中。对于一个普通的第三方 JAR,将其放在项目的 libs/目录中,这将自动将其添加到构建路径中,还有将其内容添加到 APK 文件中。

但是,Maps V2不是 JAR。它是一个包含 JAR 的 Android 库项目。你需要整个图书馆项目。

您需要将 android-sdk-windows\add-ons\addon_google_apis_google_inc_8项目导入 Eclipse,然后将其添加到应用程序 作为一个 Android 库项目的参考中。

注意,一旦您将 google-play-services _ lib 项目导入到 IDE 中,您还需要将 google-play-services.jar 添加到: 项目 = > 属性 = > Java 构建路径 = > 库 = > 添加 JAR

根据我的经验(Eclipse) :

  1. 添加了 google-play-services _ lib 作为一个项目,并从我的应用程序中引用它。
  2. 移除所有手动添加的罐子
  3. 在我项目的“ libs”文件夹中添加了 google-play-services.jar。
  4. 因为我搞砸了订单和出口,所以我遇到了一些大麻烦 选项卡,因此工作解决方案是(按照这个顺序) : src、 gen、 Google API、 Android 依赖项、 Android 私有库(只有这一个被检查为被导出)。

以上解决方案应该可以解决你的问题。如果没有,请确保使用 SDK 管理器更新 Android SDK 并安装最新的 lib 项目,然后再重复上述步骤。

在我的情况下,只有在我将 gcm.jar添加到 lib 文件夹后,它才开始工作。 就在这里: C:\adt-bundle-windows-x86_64-20131030\sdk\extras\google\gcm\gcm-client\dist

所以 google-play-services.jar不起作用了。

另一种方法是让 Eclipse 为您执行导入工作。将鼠标悬停在无法解析的 com.google.android.gms导入上,然后向弹出菜单的底部移动,选择 修正项目设置..。选项,如下所示。然后它会提示导入谷歌播放服务库。选择这个,你就可以开始了。

enter image description here

再一次确保这两件事情正确发生没有更多的。 (日食用户)

1)从—— > C 复制 jar 文件: 用户(你的用户名) android-sdks 额外功能 google google _ play _ services libproject google-play-services _ lib lib lib Google-play-services. jar

2)右击 Project-> Build Path-> Add Foreign Archive-> Google-play-services. jar

在我的情况或所有使用安卓工作室

你可以导入谷歌播放服务

在你的 build.gradle位置

compile 'com.google.android.gms:play-services:7.8.0'

或最新版本的播放服务取决于您观看这个答案的时间

更具体的进口

请检查这个单独的等级进口

Https://developers.google.com/android/guides/setup

谷歌地图

com.google.android.gms:play-services-maps:7.8.0

可能发生错误

如果您面临的错误,而您同步项目与等级文件

enter image description here

确保您安装了最新的更新

1-Android 支援资料库。

2-Android 支援库。

3-Google Repository 3-Google 知识库。

4-Google Play 服务。

enter image description here

您可能需要重新启动您的 android 工作室来响应

在 Android Studio goto 中: 文件-> 项目结构...-> 通知(最后一项)-> 检查 Google云消息传递

等几秒钟,你就完成了:) 应该正确解析 import com.google.android.gms.gcm. GcmListenerService

我也有同样的问题。通过使用最新的 sdk 工具版本进行编译解决了这个问题。(播放服务、构建工具等)。下面显示了 build.gradle 示例以供参考。

    apply plugin: 'com.android.application'




android {
compileSdkVersion 23
buildToolsVersion "23.0.1"


defaultConfig {
applicationId "com.abc.bcd"
minSdkVersion 14
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}


dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.android.gms:play-services:8.4.0'
compile 'com.android.support:appcompat-v7:23.0.1'
}

假设您正在使用 ECLIPSE:

右键单击“项目” 物业 机器人

如果您有一个版本的安卓检查,您必须将其更改为一个 GOOGLEAPI。 选择与项目目标版本兼容的 GOOGLEAPIS 版本。

我遇到了同样的问题,因此我决定使用如下的愚蠢 API 改变进口路线

import com.google.android.gms.maps.model.LatLng;

在我的示例中,只需将下面的代码添加到 build.gradle (: app)

implementation 'com.google.android.gms:play-services-location:16.0.0'