Ich verwende Google Analytics v4 in meiner Android-App. Das Installations-Tracking funktionierte einige Tage lang einwandfrei und plötzlich wurde mein Rundfunkempfänger nicht registriert.CampaignTrackingReceiver ist nicht registriert - Google Analytics v4
Logcat sagt: CampaignTrackingReceiver ist nicht registriert, nicht exportiert oder ist deaktiviert. Die Verfolgung von Installationskampagnen ist nicht möglich. Anweisungen finden Sie unter http://goo.gl/8Rd3yj.
Dies ist, was ich in meinem Manifest Anwendung Tag getan habe:
Empfänger<service android:name="com.google.android.gms.analytics.CampaignTrackingService"
android:enabled="true"
android:exported="false" />
<receiver
android:name="my.package.CustomCampaignTrackingReceiver"
android:exported="true" >
<intent-filter>
<action android:name="com.android.vending.INSTALL_REFERRER" />
</intent-filter>
</receiver>
Und mein individuellen Kampagnen-Tracking wie folgt aussieht:
public class CustomCampaignTrackingReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// When you're done, pass the intent to the Google Analytics receiver.
new CampaignTrackingReceiver().onReceive(context, intent);
Log.v("ReferralReceiver", " " + intent.getAction());
Log.v("ReferralReceiver", " " + intent.getDataString());
Log.v("ReferralReceiver", " " + intent.toString());
Log.v("ReferralReceiver", " " + intent.getStringExtra("referrer"));
//call to other referrers
}
}
Ich bin nicht in der Lage, um herauszufinden, wo die Dinge gehen außer Kontrolle. Ich verwende nur einen INSTALL_REFERRER-Filter in meinem Manifest.
Warum registrieren Sie nicht einfach beide Empfänger (Ihren eigenen Empfänger und den von Google bereitgestellten)? Das Erstellen einer neuen Instanz eines BroadcastReceivers sollte nicht durchgeführt werden. – ianhanniballake
Alles, was ich getan habe, ist auf Google folgen: https://developers.google.com/analytics/solutions/testing-play-campaigns (scrollen Sie unten, es gibt ein Beispiel). – pixelscreen
Und außerdem "Es kann nur einen BroadcastReceiver für eine Aktion geben." Ist es nicht? @ianhanniballake – pixelscreen