Google的G Suite应用如何共享数据?

时间:2017-01-27 20:44:42

标签: android ios google-apps google-advertising-id

当您下载适用于iOS的新Google套件应用程序时 - 无论是GMail,收件箱,日历还是其他任何内容 - 它们都会让您使用您的帐户登录,并且已经向您显示您在其他地方登录的帐户< / em>的

问题是适用于iOS和Android。

我知道应用可以使用Safari或新的Safari WebView(Android中的Chrome标签)和永久性Cookie来在应用之间共享数据。它有点笨拙,可以被用户删除cookie打破。但除此之外,它确实有效。

谷歌似乎正在使用别的东西。 AdvertisingID? 完全如何实现在两个操作系统上共享数据的壮举?

2 个答案:

答案 0 :(得分:3)

AppGroup允许通过创建一个公共共享路径(如文档目录)在两个不同的应用程序甚至应用程序和小部件之间共享数据。在那里保存的数据可以由与该特定AppGroup相关联的任何应用程序访问。它是应用程序之间的脱机数据共享。 Communicating and persisting data between apps with App Groups

答案 1 :(得分:2)

在Android上:

他们可能使用Content Providers。如此link中所述,

  

内容提供商管理对中央数据存储库的访问。一个   provider是Android应用程序的一部分,它经常提供它   拥有处理数据的UI。但是,内容提供商是   主要用于访问其他应用程序   使用提供者客户端对象的提供者提供者和   提供者客户端为数据提供一致的标准接口   还处理进程间通信和安全数据访问。

内容提供商协调对应用程序中数据存储层的访问,以获取许多不同的API和组件,其中包括:

  • 与其他应用程序共享对应用程序数据的访问权限;
  • 将数据发送到小部件;
  • 通过以下方式为您的应用程序返回自定义搜索建议 搜索框架;
  • 将应用程序数据与服务器同步;
  • 在您的用户界面中加载数据。

TL; DR 简而言之,Content Provider是一个允许您与其他应用/小部件共享数据库的层。因此,谷歌可能在每个应用程序中都有一个内容提供商,它共享在此应用程序上使用过的帐户。

在iOS上:

现在我只是一名Android开发人员,但经过快速的Google搜索,我发现这个post会谈到UIPasteBoard

  

使用UIPasteboard类让用户从一个地方共享数据   在您的应用中,从您的应用到其他应用。对于   与任何其他应用程序共享数据,使用全系统通用   纸板;用于与您团队中的其他应用共享数据   与应用程序共享的团队ID,用于共享使用中的命名粘贴板。

我无法向您保证,这正是Google的做法。但如果我要在我的应用程序中实现这样的东西,我会使用它。