2012-10-15 1 views
4

J'ai une application avec deux récepteurs de diffusion, l'un pour recevoir des données et l'autre pour l'envoyer. J'ai vu qu'ils ont un attribut android: processus pour les faire fonctionner sur le processus par défaut de l'application ou dans un autre. Dans les exemples que j'ai trouvés en utilisant google, les récepteurs ont été configurés pour fonctionner dans le processus ": remote". Ma question est, quels sont les avantages et les inconvénients de l'utilisation de chaque option?Android BroadcastReceiver: l'exécuter sur le processus par défaut ou dans un nouveau?

Répondre

2

L'utilisation d'un processus différent du processus par défaut de l'application est pratique lorsque vous souhaitez partager des ressources avec une autre application.

De même, vous devez organiser deux applications avec le même nom de processus, si votre nom de processus commence par une valeur plus basse qu'un processus global est généré. Si cela commence par un deux-points: que le processus est privé. Gardez à l'esprit que pour partager un processus entre deux applications, vous avez besoin du même ID utilisateur et du même certificat d'application.

Vous ne devez également charger qu'une seule fois les ressources et obtenir des avantages en termes de consommation de mémoire.

pour more information

0

Un processus a son propre thread principal. Ainsi, lorsque vous utilisez différents processus, c'est-à-dire :remote, cela signifie que le code défini dans ce processus s'exécutera sur un thread distinct. Vous n'avez généralement pas besoin de le faire pour un flux de travail ordinaire.

Questions connexes