如何在maven项目中使用Google Play服务?

use*_*317 14 android maven google-play-services

有人可以给我一步一步的教程,告诉我如何在maven项目中使用google play服务?我添加了两个依赖项

<dependency>
    <groupId>com.google.android.gms</groupId>
    <artifactId>google-play-services</artifactId>
    <version>4</version>
    <type>apklib</type>
</dependency>

<dependency>
    <groupId>com.google.android.gms</groupId>
    <artifactId>google-play-services</artifactId>
    <version>4</version>
    <type>jar</type>
</dependency> 
Run Code Online (Sandbox Code Playgroud)

apklib和jar出现在maven存储库中,但未生成com.google.android.gms.R类.

我收到NoClassDefFoundError.如何将com.google.android.gms放入gen文件夹?

Ben*_*oit 11

您可以使用Android Maven SDK Deployer,而不仅仅是Google Play服务

".apklib"与android-maven-plugin <3.8.1

顺便说一句,你应该使用版本13.0.0而不是4

<dependency>
  <groupId>com.google.android.gms</groupId>
  <artifactId>google-play-services</artifactId>
  <version>13.0.0</version>
  <type>apklib</type>
</dependency>

<dependency>
  <groupId>com.google.android.gms</groupId>
  <artifactId>google-play-services</artifactId>
  <version>13.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

".aar"与android-maven-plugin 3.8.2+

使用android-maven-plugin 3.8.2,您还可以使用播放服务aar

<dependency>
  <groupId>com.google.android.gms</groupId>
  <artifactId>play-services</artifactId>
  <version>4.0.30</version>
  <type>aar</type>
</dependency>
Run Code Online (Sandbox Code Playgroud)


Kyg*_*ght 6

将google-play-services_lib项目导入Eclipse工作区并使其成为库后,您需要设置maven构建过程.

制作"google-play-services_lib"文件夹的zip文件,并将其命名为"google-play-services_lib.apklib"

  + google-play-services_lib.apklib
     + src
     + res
     + AndroidManifest.xml
     + project.properties
Run Code Online (Sandbox Code Playgroud)

打开命令提示符并转到zip文件所在的文件夹,然后键入以下命令.这会将apklib安装到您本地的maven存储库中.

mvn install:install-file -Dfile = google-play-services_lib.apklib -DgroupId = com.google.android.gms -DartifactId = google-play-services -Dversion = 14.0.0 -Dpackaging = apklib

现在,您需要将google-play-services jar安装到本地存储库中.

mvn install:install-file -Dfile = google-play-services.jar -DgroupId = com.google.android.gms -DartifactId = google-play-services -Dversion = 14.0.0 -Dpackaging = jar

回到Eclipse并打开你的android pom文件并输入以下依赖项

<dependency>
  <groupId>com.google.android.gms</groupId>
  <artifactId>google-play-services</artifactId>
  <version>14.0.0</version>
  <type>apklib</type>
</dependency>    

<dependency>
  <groupId>com.google.android.gms</groupId>
  <artifactId>google-play-services</artifactId>
  <version>14.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

现在,您可以运行maven package命令,使用google play jar进行输出更新,并将apklib合并到您的apk文件中.

mvn包-Pandroid -Psign


Nag*_*rla 3

查看杰克·沃顿给出的链接。它需要 2 个步骤。首先,将工件部署到本地 Maven 存储库,然后从 app/pom.xml 中引用它

https://github.com/JakeWharton/gms-mvn-install

华泰