我在Android Manifest文件中使用AdMob安装接收器,例如
<!-- AdMob Install Receiver -->
<receiver android:name="com.admob.android.ads.analytics.InstallReceiver" android:exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
但是,我也想使用自己的INSTALL_REFFERER接收器。问题是,当我在AdMob之后包含我自己的接收器时,它永远不会被调用。如果我在清单文件中的AdMob接收器之前包含我的,我会被调用但是AdMob没有。
无论如何,我可以同时召唤两个人吗?
由于
答案 0 :(得分:1)
Android应用不能拥有多个具有相同意图过滤操作的接收器。
像这样制作代理接收器:
AndroidManifest.xml中的:
<receiver android:name="com.example.app.TrackingReceiver" android: exported="true">
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
TrackingReceiver.java中的:
public class TrackingReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// call AdMob tracker
com.google.ads.InstallReceiver ir = new com.google.ads.InstallReceiver();
ir.onReceive(context, intent);
// call Analytics tracker
com.google.android.apps.analytics.AnalyticsReceiver ar = new com.google.android.apps.analytics.AnalyticsReceiver();
ar.onReceive(context, intent);
}
}