我是Android开发的新手。通过关注this tutorial,当我将代码编入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;
通过搜索各种修复,我确保尝试这些:
<uses-library android:name="com.google.android.maps" />
作为AndroidManifest.xml
代码的子项排成<application>
。Project->Clean...
并构建它来清理项目
从头开始。.jar
文件,然后去了
构建路径并添加外部存档,将其定位在我的SDK中:android-sdk-windows\add-ons\addon_google_apis_google_inc_8\libs\maps
不幸的是,以上都没有帮助。
答案 0 :(得分:53)
另一种方法是让Eclipse为您执行导入工作。将鼠标悬停在无法解析的com.google.android.gms
导入上,然后在弹出菜单底部选择修复项目设置... 选项,如下所示。然后它会提示导入Google Play服务库。选择那个,你应该好好去。
答案 1 :(得分:40)
我将Google API作为项目构建目标进行了检查。
这是无关紧要的,就像地图V1一样,并且您正在尝试使用Maps V2。
我通过右键单击我的项目包含了地图的.jar文件,转到构建路径并添加了外部存档,将其定位在我的SDK中:android-sdk-windows \ add-ons \ addon_google_apis_google_inc_8 \ libs \ maps
这是双重错误。
首先,从不手动修改Android项目中的构建路径。如果你这样做,充其量,你会在运行时崩溃,因为你认为你放入项目的JAR(通过手动构建路径更改)不在你的APK中。对于普通的第三方JAR,请将其放在项目的libs/
目录中,该目录会自动将其添加到您的构建路径并将其内容添加到您的APK文件中。
但是,Maps V2不是JAR。它是一个包含JAR的Android库项目。你需要整个图书馆项目。
您需要将android-sdk-windows\add-ons\addon_google_apis_google_inc_8
项目导入Eclipse,然后将其添加到您的应用as a reference to an Android library project。
答案 2 :(得分:19)
根据我的经验(Eclipse):
答案 3 :(得分:13)
在我的情况下或所有使用android studio
您可以导入Google Play服务
放在compile 'com.google.android.gms:play-services:7.8.0'
com.google.android.gms:play-services-maps:7.8.0
或最新版本的播放服务取决于您何时看到此答案
更具体的导入
请查看此个别gradle进口
https://developers.google.com/android/guides/setup
Google地图
<first>one</first><second>two</second><third>three</third>
可能发生错误
如果您在使用gradle文件同步项目时遇到错误
确保安装最新更新
1- Android支持存储库。
2- Android支持库。
3- Google Repository。
4-Google Play Services。
您可能需要重启Android工作室才能回复
答案 4 :(得分:7)
请注意,将google-play-services_lib项目导入IDE后,您还需要将google-play-services.jar添加到: Project =&gt; Properties =&gt; Java build path =&gt; Libraries =&gt; Add JARs
答案 5 :(得分:1)
以上解决方案应该可以解决您的问题。如果没有,请确保使用SDK管理器更新Android sdk并安装最新的lib项目,然后重复上述步骤。
答案 6 :(得分:1)
再一次确保这两件事情正确地发生了。 (对于ECLIPSE用户)
1)从 - &gt;复制jar文件C:\ Users(你的用户名)\ android-sdks \ extras \ google \ google_play_services \ libproject \ google-play-services_lib \ libs \ google-play-services.jar
2)右键单击项目 - &gt;构建路径 - &gt;添加外部存档 - &gt; google-play-services.jar
答案 7 :(得分:1)
在Android Studio中转到: 档案 - &gt;项目结构...... - &gt;通知(最后一项) - &gt;检查Google Cloud Messaging
等几秒钟你完成了:) 应正确解析导入com.google.android.gms.gcm.GcmListenerService
答案 8 :(得分:0)
我也有同样的问题。通过使用最新的sdk工具版本进行编译来解决它。(播放服务,构建工具等)。示例build.gradle如下所示,以供参考。
b = $('#b');
function css(a) {
var sheets = document.styleSheets,
o = {};
for (var i in sheets) {
var rules = sheets[i].rules || sheets[i].cssRules;
for (var r in rules) {
if (a.is(rules[r].selectorText)) {
o = $.extend(o, css2json(rules[r].style), css2json(a.attr('style')));
}
}
}
return o;
}
function css2json(css) {
var s = {};
if (!css) return s;
if (css instanceof CSSStyleDeclaration) {
for (var i in css) {
if ((css[i]).toLowerCase) {
s[(css[i]).toLowerCase()] = (css[css[i]]);
}
}
} else if (typeof css == "string") {
css = css.split("; ");
for (var i in css) {
var l = css[i].split(": ");
s[l[0].toLowerCase()] = (l[1]);
}
}
return s;
}
myCSS = objToString(css(b));
function objToString(obj) {
var str = '{\n';
for (var p in obj) {
if (obj.hasOwnProperty(p)) {
str += ' ' + p + ': ' + obj[p] + ';\n';
}
}
str += '}';
return str;
}
function download(text, name, type) {
var a = document.createElement("a");
var file = new Blob([text], {
type: type
});
a.href = URL.createObjectURL(file);
a.download = name;
a.click();
}
b.on('click', function() {
download(myCSS, 'test.css', 'text')
});
答案 9 :(得分:0)
假设您正在使用ECLIPSE:
右键单击PROJECT 性能 机器人
如果您选中了版本的ANDROID,则必须将其更改为GOOGLE API。 选择与您项目的目标版本兼容的GOOGLE APIS版本。
答案 10 :(得分:-1)
仅在我将gcm.jar
添加到lib文件夹后才开始工作。
它在这里:C:\adt-bundle-windows-x86_64-20131030\sdk\extras\google\gcm\gcm-client\dist
所以google-play-services.jar
无效......
答案 11 :(得分:-3)
我有同样的问题,所以我决定如下的哑API 更改导入行
import com.google.android.gms.maps.model.LatLng;