我正在尝试创建使用播放服务的android aar。我在库 gradle 文件中添加了游戏服务依赖项。但是,当 aar 在发布模式运行时导出时,它不起作用。 如何在 aar 中添加谷歌播放服务? 请帮忙
在将库添加为依赖项时,您可能需要检查以下步骤:
通过以下任一方式将库添加到项目中(如果在同一项目中创建了库模块,则它已经存在,您可以跳过此步骤(:
添加已编译的 AAR(或 JAR(文件(库必须已构建(:
- 单击">新建>文件">"新建模块"。
- 单击">导入"。.JAR/。AAR 包,然后单击下一步。
- 输入已编译的 AAR 或 JAR 文件的位置,然后单击完成。
将库模块导入到项目中(库源成为项目的一部分(:
- 单击"新建>导入模块>文件"。
- 输入库模块目录的位置,然后单击完成。
库模块将复制到项目中,因此您可以实际编辑库代码。如果要维护库代码的单个版本,则这可能不是您想要的,您应该如上所述添加编译的 AAR 文件。
- 确保库列在
settings.gradle
文件的顶部,如下所示,名为"my-library-module"的库:
include ':app', ':my-library-module'
- 打开应用模块的 build.gradle 文件,并向依赖项块添加新行,如以下代码片段所示:
dependencies {
compile project(":my-library-module")
}
- 点击将项目与 Gradle 文件同步。
但是,如果它是要重用的应用模块,则可以按照以下步骤将其转换为库模块,将应用模块转换为库模块:
- 打开模块级
build.gradle
文件。 - 删除
applicationId
的行。只有 Android 应用模块才能定义这一点。 在文件顶部,应会看到以下内容:
apply plugin: 'com.android.application'
将其更改为以下内容:
apply plugin: 'com.android.library'
保存文件,然后点击Android>的工具>与 Gradle 同步项目 文件。
有关更多详细信息,请参阅此文档。也。这篇相关的SO帖子可以提供额外的见解。
由于现在的游戏服务包含 aar 库而不是 jar,我们不能将 aar 文件与库合并,即另一个 aar 文件。因此,无法在 aar 文件中添加播放服务。这个问题的最佳解决方案是谁在使用你制作的 aar,告诉他们在项目中添加游戏服务依赖项。
- 向项目添加新模块,然后选择">导入"。.JAR/。AAR 包。
- 添加模块后,请按以下步骤操作: 项目结构 → 选择应用模块 → "依赖项"选项卡→点击 + 按钮→选择您添加的模块→ 确定