Android中的play-services-base与-basement依赖关系(AAR)

Fat*_*tie 8 android unity-game-engine maven prime31 aar

我找到了一个xml文件GoogleDependencyFlurryPlugin.xml

<dependencies>
<dependency><groupId>com.google.android.gms</groupId><artifactId>play-services-base</artifactId><version>8.4+</version></dependency>
<dependency><groupId>com.google.android.gms</groupId><artifactId>play-services-basement</artifactId><version>8.4+</version></dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)

确实是一个xml文件GoogleDependencyPlayGameServicesPlugin.xml

<dependencies>
<dependency><groupId>com.google.android.gms</groupId><artifactId>play-services-games</artifactId><version>8.4+</version></dependency>
<dependency><groupId>com.google.android.gms</groupId><artifactId>play-services-plus</artifactId><version>8.4+</version></dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)

现在,前一个文件只有一个点

play-services-base>或<play-services-basement

这似乎造成了一个巨大的问题.AndroidJavaException:java.lang.NoSuchMethodError:一旦在设备上运行.

Android专家,如果你有"基地",你必须有 "地下室"......或者反之亦然

事实上,WRT游戏服务 - 游戏或游戏服务 - 加上,或许其中一个/两个在某种程度上(或相反?)基地/地下室?

Mat*_*ini 12

该库play-services-basement是一个依赖play-services-base.它是在谷歌推出游戏服务版本8.1.0,以帮助减少像一些其他库的大小play-services-adsplay-services-analytics.

当您添加时play-services-base,也会自动添加,play-services-basement因此不必添加显式依赖项.

您可以检查本地Google存储库中每个库的依赖关系.

例如,对于库,play-services-games打开位于此处的文件pom文件:

extras/google/m2repository/com/google/android/gms/play-services-games/8.4.0/play-services-games-8.4.0.pom
Run Code Online (Sandbox Code Playgroud)

这是文件的内容:

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.google.android.gms</groupId>
  <artifactId>play-services-games</artifactId>
  <version>8.4.0</version>
  <packaging>aar</packaging>
  <dependencies>
    <dependency>
      <groupId>com.google.android.gms</groupId>
      <artifactId>play-services-base</artifactId>
      <version>8.4.0</version>
      <scope>compile</scope>
      <type>aar</type>
    </dependency>
    <dependency>
      <groupId>com.google.android.gms</groupId>
      <artifactId>play-services-drive</artifactId>
      <version>8.4.0</version>
      <scope>compile</scope>
      <type>aar</type>
    </dependency>
  </dependencies>
</project>
Run Code Online (Sandbox Code Playgroud)

你可以看到play-services-games取决于play-services-baseplay-services-drive

  • &lt;rant&gt;如果您是 Google 并且已经到达了“基地”,那么您显然只能前往“地下室”才能更深入:)&lt;/rant&gt; (2认同)