![](/img/trans.png)
[英]Adding Google Play Services to non-gradle Android Studio project?
[英]Including Google Play Services to Android Studio project
我一直在尝试将最新的Google Play服务库添加到我的Android Studio项目中,以便使用推送消息和Maps API。
由于有很多关于如何在Eclipse和CLI中包含此库的教程,因此没有关于如何在Android Studio上包含最新库的说明。
我一直在寻找许多网站,其中一个看起来最合适的答案就是这个 ,因为其他的似乎记录了旧版本,但它看起来仍然像我遗漏了一些东西。
我试图将这个库包含在我将Facebook库包含到我的项目中的方式相同(对于Android Studio而言,这比GooglePlay更难记录),但它仍然看起来像我错过了一些东西。
为此,我将整个文件夹<android-sdk>\\extras\\google\\google_play_services\\libproject\\google-play-services_lib
复制到我的<project-path>\\libraries\\google-play-services_lib
然后在Studio中,我尝试在模块>添加>导入模块中添加复制的文件夹,如Facebook文档或提供的链接中所述。 我必须忘记像gradle文件,检查模块属性,我真的不知道我正在用这个lib做什么。
编辑:我在Android Studio上工作。
使用Android Studio,您唯一需要的是编辑build.gradle文件并确保没有 android或google jar库,这意味着您需要从项目中删除jar库(除非您使用的是libs)比如可能需要jar库的ActionbarSherlock)。
如果您计划使用Google Play服务,则build.gradle文件应如下所示:
dependencies {
compile 'com.android.support:support-v4:13.0.+'
compile 'com.android.support:support-v13:13.0.+'
compile 'com.google.android.gms:play-services:3.1.36'
}
确实非常直截了当。
此外,如果您使用的是Facebook SDK
,则需要编辑其build.gradle
文件并根据主项目的build.gradle
更改其依赖build.gradle
。
在使用Gradle的Android Studio中设置此功能有两个步骤。
1)安装SDK的必需部分。
Android Studio使用与Eclipse不同的Android SDK位置,因此您需要在Android Studio中执行此操作,即使您以前为Eclipse执行此操作(除非您更新它们以共享相同的SDK位置)。
从Android Studio菜单栏中,打开工具 - > Android - > SDK Manager
在Extras部分下,安装以下内容:
2)添加Gradle依赖项。
在您的模块的build.gradle
执行此操作(即, 不是整个Android Studio项目的顶级):
dependencies {
compile 'com.android.support:support-v4:19.0.0'
compile 'com.android.support:support-v13:13.0.+'
compile 'com.google.android.gms:play-services:3.1.36'
}
这可能不是所需的最小指令集,但它对我有用。 :-)
我假设你遇到了一个ClassNotFound异常,因为你引用了这个问题。 如果您在Eclipse中工作,我建议您确保已在Google Play服务库项目中选中“is library”,然后确保在您的应用项目中引用此库项目。
但是对于Android Studio,我建议你看看这个: 带有Google Play服务的Android Studio
接受的答案看起来相关,并提供了比您引用的问题更完整的程序。
我有一个关于如何使用Eclipse和Android Studio进行工作的快速教程,它有点冗长,但到目前为止我已经有100%的成功率并且没有错误。
Gradle Library教程: http ://www.aetherstudios.net/pages/gradle.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.