Unity Android报错Unable to check Google Play services availablit

运行时报错:Unable to check Google Play services availablity as the com.google.android.gms.common.GoogleApiAvailability class is not present in this application.
Unity Android报错Unable to check Google Play services availablit_第1张图片
在Google上搜索找到几篇关于这个报错的文章:
Article1:Unable to check Google Play services availablity
Article2:看chkuang-g的评论

根据这两篇文章笔者顺利解决报错:

  • 文1中有用户反映是丢失了一些aar,笔者对比了当前项目工程和之前的版本确实发现丢失,手动把com.google.android.gms.play-services-base-17.3.0.aar和com.google.auto.value.auto-value-annotations-1.6.5.jar从svn中还原后。再次出包,已无报错。
  • 根据文2中说明,就是Resolve管理工具还不完善,会存在多删、漏加、拉的版本不对等多个问题。
  • 另外还要考虑到各个不同SDK对某个相同aar或者jar的需求版本不一致

总结

1.笔者的情况就是Firebase SDK需要的jar(aar)在用Resolve工具Delete时时被删除,但是Resolve时又未能添加导致的。
2.建议Resolve管理工具不要允许 Auto-Resolution和Resolutiion On Build,由自己手动来管理
3.Firebase SDK依赖谷歌服务,因此在应用开头处需要检测Google Play服务版本是否符合Firebase Unity SDK的要求。详情参考第 6 步:确认 Google Play 服务版本要求

你可能感兴趣的:(Android,SDK,Unity)