پرش به مطلب اصلی

چندین Receiver

اگر منابع متعددی نیاز به ثبت یک broadcast receiver برای intent INSTALL_REFERRER در اپ شما دارند، باید یک BroadcastReceiver سفارشی پیاده‌سازی کنید که تمام سایر receiver هایی را که می‌خواهید پشتیبانی کنید فراخوانی می‌کند.

اگر broadcast receiver خودتان را در فایل manifest تعریف کرده‌اید (مشابه زیر):

<receiver
android:name="com.your.app.InstallReceiver"
android:permission="android.permission.INSTALL_PACKAGES"
android:exported="true" >
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>

مطمئن شوید که Adtrace broadcast receiver (و هر کدام دیگری که ممکن است به اطلاعات نیاز داشته باشند) را از محتوای intent خود مطلع کنید:

public class InstallReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// Adtrace receiver.
new AdTraceReferrerReceiver().onReceive(context, intent);
// Google Analytics receiver.
new CampaignTrackingReceiver().onReceive(context, intent); // و هر receiver دیگری که به intent نیاز دارد.
}
}