我已经编写了一个安装接收器来确定何时通过Market安装了应用程序。但是,如果安装在应用程序中,我还想将INSTALL_REFERRER广播传递到其他接收方,例如Google Analytics AnalyticsReceiver
。重要的是,我不知道是否安装了其他接收器,因为我的接收器将被其应用程序中的其他开发人员使用。
目前,我收到广播,完成后我致电:
AnalyticsReceiver receiver = new AnalyticsReceiver();
receiver.onReceive(context, intent);
问题是AnalyticsReceiver
课程可能不存在。
如果我不确定该应用是否使用了AnalyticsReceiver
,那么如何传播广播?
或者Android本身会确保安装的每个接收器都能获得广播吗?
非常感谢!
答案 0 :(得分:5)
这并没有真正回答这个问题,但INSTALL_REFERRER
唯一预定的目标是Google Analytics库,因此对广播中包含的数据(或任何有关广播的广告)没有任何保证。事情),所以你不应该依赖它。
另一方面,这里有一些相关的S.O.问题:
答案 1 :(得分:2)
罗曼的回答并不完全正确。他们没有逐步说明,但谷歌自己建议您使用自己的广播接收器。我认为他们最近添加了这个模糊,但不确定何时。当我回答他提到的一个问题时,我很肯定它不存在。
注意:每个只能指定一个BroadcastReceiver类 应用。您是否需要合并两个或更多 来自不同SDK的BroadcastReceivers,您将需要创建您的 拥有接收所有广播和呼叫的BroadcastReceiver类 适用于每种广播类型的BroadcastReceivers。
这似乎也回答了你是否可以盲目重播的问题,至少谷歌是这样的。