【问题标题】:Is the Google Play Services Lib compiled with my app?Google Play Services Lib 是否与我的应用一起编译?
【发布时间】:2015-01-21 19:50:05
【问题描述】:

我对设备如何编译/使用 Google Play 服务感到有些困惑。 我读到 Google Play 服务是通过 Play 商店在设备上更新的。 我还读到,由于 Google Play 服务库被编译到他们的应用程序中,人们的应用程序的大小增加了。 这两点对我来说似乎是冲突的,所以也许我误解了一些东西。 所以: 1:谷歌播放服务功能是否从应用程序外部运行? 2:Google Play 服务真的编译成应用了吗? 3:如果以上两个都成立,使用哪个版本? 4:如果我有一个使用 GPS 的 lib jar 并且主 App 也使用 GPS,GPS 是否会被包含两次?

感谢您提供任何可以带来更清晰的信息。

【问题讨论】:

    标签: android google-play-services


    【解决方案1】:

    1:Google Play 服务功能是否在应用外部运行?

    调用来自您的应用,并以您的应用名称运行(许可方式)。但是,调用由 Google Play 服务包接收,执行的代码也包含在 Play 中服务。

    2:Google Play 服务是否真的被编译成应用程序?

    ,Google Play 服务是单独安装在您的设备上的。 Play 服务界面会编译到您的应用中。

    3:如果以上两个都成立,使用哪个版本?

    始终使用来自“Google Play 服务”应用的代码。而且它大多是向后兼容的(因此旧界面可以安全地使用新的 Play 服务)。

    4:如果我有一个使用 GPS 的 lib jar 并且主 App 也使用 GPS,GPS 是否会被包含两次?

    如果这些 .jar 的大小不同(意味着它们是不同的版本),编译器应该警告您并中止。如果两者相同,则项目编译并GPS 接口仅包含一次。这没关系,因为您不能有多个具有相同全名的类。

    【讨论】:

      【解决方案2】:

      Google Play 服务是安装在每部带有 Play 商店的手机上的系统应用。它处理与 Google 服务器的通信,并在所有需要访问它所包含的服务的应用程序中协调请求、处理缓存等。

      您的应用程序中包含的是 Google Play 服务库,它处理您的应用程序连接到 Google Play 服务应用程序,通过 Google Play 服务应用程序转发来自您的应用程序的请求(并最终在适当的情况下转发到 Google 以完成请求)。

      因此流程是这样的:

      your app -> Google Play Services library -> Google Play Services app -> Google
      

      与任何库一样,最终 APK 中只存在一个版本。

      【讨论】:

      • 感谢有道理
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多