Я не уверен, что понимаю, о чем идет речь в документе Google Analytics SDK, но я подозреваю, что это означает, что вы не можете зарегистрировать один и тот же класс дважды с разными фильтрами.Однако я знаю, что вы можете иметь несколько приемников вещания.
Так, например, я не думаю, что это работает:
<receiver android:name="com.sample.myapp.MyAnalyticsReceiver" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<receiver android:name="com.sample.myapp.MyAnalyticsReceiver" android:exported="true">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
Однако я знаю, что это делает:
<receiver android:name="com.sample.myapp.MyAnalyticsReceiver" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
Это также работает для установки различных приемников, отслеживающихте же события трансляции:
<receiver android:name="com.google.android.apps.analytics.AnalyticsReceiver" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
<receiver android:name="com.sample.myapp.MyAnalyticsReceiver" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
В документации Android Developer я не нашел ничего, что могло бы объяснить предупреждение.Единственная другая причина предупреждения заключается в том, что намерение INSTALL_REFERRER отправляется как заказанная трансляция, а приемник Google Analytics по умолчанию прерывает дальнейшую трансляцию, что маловероятно, но возможно - поскольку это намерение исходит из приложения Google Market / Play, поведение сообщений INSTALL_REFERRERизменилось в разных версиях.