2011-02-13 10 views
7

He escrito un receptor de instalación para determinar cuándo se ha instalado una aplicación a través de Market. Sin embargo, también quiero pasar la transmisión INSTALL_REFERRER a otros receptores como Google Analytics AnalyticsReceiver si está instalada dentro de la aplicación. Es importante destacar que NO sé si otros receptores están instalados, ya que otros desarrolladores utilizarán mi receptor dentro de sus aplicaciones.Interceptar INSTALL_REFERRER y luego reenviar a Google AnalyticsReceiver

Actualmente, reciben la emisión completa y cuando me llaman:

AnalyticsReceiver receiver = new AnalyticsReceiver();

receiver.onReceive(context, intent);

La cuestión es la clase AnalyticsReceiver puede no estar presente.

Entonces, ¿cómo paso la transmisión si no estoy seguro de si la aplicación usa AnalyticsReceiver?

¿O es que Android se asegurará de que cada receptor instalado reciba la transmisión?

¡Muchas gracias!

+1

Después de más investigaciones estoy bastante seguro de que no puedes tener más de un receptor de instalación, por lo que cualquier consejo sobre cómo "transmitir" la transmisión de la instalación sería genial. – user605333

Respuesta

2

respuesta de Romano no es del todo correcto. No entran en las instrucciones paso a paso, pero Google mismo recomienda usar su propio receptor de difusión si es necesario. Creo que agregaron esta propaganda recientemente, pero no estoy seguro de cuándo. Estoy bastante seguro de que no existía cuando respondí una de las preguntas que él vincula.

From their guide:

Nota: Sólo una clase BroadcastReceiver se puede especificar por aplicación. Si necesita incorporar dos o más BroadcastReceivers de diferentes SDK, tendrá que crear su propia clase BroadcastReceiver que recibirá todas las transmisiones y llamar al los BroadcastReceivers apropiados para cada tipo de difusión.

Esto también parece responder a la pregunta de si puede retransmitir a ciegas, al menos de acuerdo con Google.

Cuestiones relacionadas