8 votes

Google Talk et Play Store nécessitent-ils toujours une synchronisation en arrière-plan sous Ice Cream Sandwich ?

Lorsque j'utilisais les versions d'Android jusqu'à 2.x, certaines applications comme Google Talk et Android Market (maintenant Play Store) nécessitaient l'activation de la synchronisation en arrière-plan via Paramètres -> Compte et synchronisation -> Données de base . J'ai récemment effectué une mise à niveau vers Ice Cream Sandwich et j'ai remarqué que Google Talk et Play Store fonctionnent désormais également lorsque ce paramètre est désactivé.

Ces applications nécessitent-elles toujours une synchronisation en arrière-plan, éventuellement d'une manière qui n'est plus contrôlée par un paramètre accessible à l'utilisateur ?

8voto

Leonard Points 2832

Oui, les données de fond sont toujours activées depuis Ice Cream Sandwich. Voir la note dans la documentation de android.net.ConnectivityManager.getBackgroundDataSetting() :

A partir de ICE_CREAM_SANDWICH La disponibilité des données d'arrière-plan dépend de plusieurs facteurs combinés, et cette méthode retournera toujours true. Au contraire, lorsque les données d'arrière-plan ne sont pas disponibles, getActiveNetworkInfo() apparaîtra maintenant déconnecté.


Vending (le nom interne de l'Android Market, en fait com.android.vending ) utilise C2DM pour recevoir les demandes d'installation (jetez un coup d'œil à son manifeste d'application ; même sur ICS, il a toujours des récepteurs c2dm). AFAIK, C2DM ne fonctionne que lorsque des données d'arrière-plan sont disponibles.

Il y a quelque temps, j'ai lu un article de blog quelque part (que je ne retrouve malheureusement pas pour l'instant) expliquant le fonctionnement de l'Android Market (l'article datait d'avant son changement de nom). IIRC, même lorsque vous demandiez d'installer une application directement sur votre appareil (au lieu de le faire indirectement via l'application https://market.Android.com/ ), il n'a fait qu'envoyer une demande aux serveurs de Google, qui ont ensuite envoyé à votre appareil (via C2DM) une demande d'installation. Cela explique pourquoi Vending a besoin de données d'arrière-plan : il ne peut rien faire sans être en mesure de recevoir des demandes des serveurs Google via C2DM.

Je ne sais pas ce qu'il en est de Google Talk, mais d'après ce que j'ai entendu, il utilisait le C2DM bien avant que celui-ci ne soit accessible au public. Encore une fois, cela expliquerait pourquoi il a besoin de données de base pour fonctionner.

À ma connaissance, la synchronisation en arrière-plan est complètement distincte des données d'arrière-plan, à l'exception du fait qu'elle ne peut évidemment pas se synchroniser en arrière-plan si les données d'arrière-plan sont désactivées, et du fait que vous pouvez la modifier à partir de l'écran de synchronisation dans l'application des paramètres.

0voto

Kevin Dente Points 7732

J'ai un Samsung Galaxy Nexus fonctionnant sous ICS 4.0.4. Lorsque je navigue dans l'écran Paramètres->Comptes et Synchronisation et que je sélectionne un compte (plus précisément le compte que j'utilise pour Google Talk et le Google Play store), ces deux applications ne sont pas présentes dans la liste des applications qui peuvent être activées/désactivées pour la synchronisation en arrière-plan. Si ces applications effectuent la synchronisation en arrière-plan, l'utilisateur n'a plus la possibilité de la désactiver.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X