How is Google G Suite Apps sharing data?

It seems when you download the new Google Suite app for iOS - whether it's GMail, Inbox, Calendar or something else - they suggest you log in to your account and already present you with an account that you registered elsewhere.

The question is for both iOS and Android.

I know that applications can use Safari or the new Safari WebView (Chrome tabs in Android) and a persistent cookie to exchange data between applications. This is a bit inconvenient and may be violated by the user deleting cookies. But other than that, it works.

Google seems to be using something else. AdvertisingID? How exactly do they achieve this success in exchanging data on both operating systems?

+7
android ios google-apps google-advertising-id
source share
2 answers

AppGroup allows data exchange between two different applications or even applications and widgets, creating one common common path (for example, a document catalog). Access to the data stored there can be obtained in any application that is associated with this particular group of applications. This is an offline data exchange between applications. Communicate and save data between applications with application groups

+3
source share

On Android:

They are probably using Content Providers . As described in the link

The content provider controls access to the central data warehouse. the provider is part of an Android application that often provides its own user interface for working with data. However, content providers are primarily intended for use by other applications that access a provider that uses the client’s client object. Together, vendors and vendor customers offer a consistent standard interface for data, which also handles interprocess communication and secure data access.

The content provider coordinates access to the storage slot in your application for several different APIs and components, including:

  • Providing access to your application data to other applications;
  • Sending data to the widget;
  • Return custom offers for your application through the search structure;
  • Synchronization of application data with your server;
  • Loading data into the user interface.

TL; DR . In short, the Content Provider is a layer that allows you to share your database with other applications / widgets. So Google probably has a content provider in every application that shares the accounts that were used in this application.


In iOS:

Now I'm just an Android developer, but after a quick Google search, I found this post that talks about UIPasteBoard :

Use the UIPastboard class to allow the user to exchange data from one place to another in your application and from your application to other applications. To exchange data with any other application, use a common general cardboard; To exchange data with another application from your team, the same team identifier as the application for sharing named files.


I can’t assure you that this is exactly how Google does it. But if I implemented such a thing in my applications, I would use this.

+2
source share

All Articles