Как я могу использовать сервисы google play в проекте maven? - программирование
Подтвердить что ты не робот

Как я могу использовать сервисы google play в проекте maven?

Кто-нибудь может дать мне пошаговое руководство о том, как я могу использовать сервисы google play в проекте maven? Я добавил две зависимости

<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> 

apklib и jar появляются в репозитории maven, но класс com.google.android.gms.R не генерируется.

Я получаю NoClassDefFoundError. Как я могу поместить com.google.android.gms в папку gen?

4b9b3361

Ответ 1

Вы можете использовать Android Maven SDK Deployer для более чем просто сервисов Google Play

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

Btw вы должны использовать версию 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>

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

С Android-плагином 3.8.2 вы также можете использовать сервисы play aar

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

Ответ 2

После импорта проекта google-play-services_lib в рабочее пространство Eclipse и создания библиотеки вам нужно настроить процесс сборки maven.

Сделайте zip файл в папке "google-play-services_lib" и назовите его "google-play-services_lib.apklib"

  + google-play-services_lib.apklib
     + src
     + res
     + AndroidManifest.xml
     + project.properties

Откройте командную строку и перейдите в папку, в которой находится 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 в свой локальный репозиторий.

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 и откройте файл pom 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>

Теперь вы можете запустить команду maven package, чтобы иметь выходное обновление с помощью игрового баннера google, и apklib объединился в ваш файл apk.

mvn package -Pandroid -Psign ​​

Ответ 3

Оформить ссылку, указанную Джейком Уортоном. Для этого требуется 2 шага. В первом случае вы устанавливаете артефакт в локальный репозиторий maven, а затем ссылаетесь на него из вашего приложения /pom.xml

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

НТН