2013-08-01 16 views
8

Ho un'app per Android in cui l'utente deve registrarsi. All'invio della registrazione, desidero inviare i parametri dallo PlayStore (utm_source, ecc.) Per sapere da quale utente della campagna proviene.Misurazione campagna con BroadcastReceiver proprio

Quindi l'idea era di utilizzare un proprio BroadcastReceiver per INSTALL_REFERRER, in cui salvare i parametri in un file. Quando l'utente si registra, leggerò il file e invierò il contenuto.

così ho fatto ricevitore:

public class CampaignBroadcastReceiver extends BroadcastReceiver { 
@Override 
public void onReceive(Context context, Intent intent) { 


    String refferer = intent.getExtras().getString("referrer"); 
    try { 
     FileOutputStream fos = context.openFileOutput("campaign", Context.MODE_PRIVATE); 
     fos.write(refferer.getBytes()); 
     fos.close(); 
    } catch (FileNotFoundException e) { 

    } catch (IOException e) { 

    } 


    new CampaignTrackingReceiver().onReceive(context, intent); 
} 

E, in AndroidManifest.xml io uso:

<service android:name="com.google.analytics.tracking.android.CampaignTrackingService"/> 
    <receiver android:name=".receiver.CampaignBroadcastReceiver" android:exported="true"> 
     <intent-filter> 
      <action android:name="com.android.vending.INSTALL_REFERRER" /> 
     </intent-filter> 
    </receiver> 

quando uso lo scenario di test da parte di Google funziona e il metodo OnReceive nel mio BroadcastReceiver è chiamato.

./adb shell am broadcast -a com.android.vending.INSTALL_REFERRER -n 
mypackage/mypackage.receiver.CampaignBroadcastReceiver --es "referrer" 
"utm_source%3Dtest%26utm_medium%3Dbanner%26utm_term%3Dmailstuff" 

Tuttavia, quando provo da PlayStore non viene chiamato nulla.

Qualcuno ha idea di come applicare i parametri della campagna da PlayStore nell'app?

+0

ora ho scoperto che funziona se l'utente installa l'applicazione sul telefono direttamente con l'app Play Store. Ma quando l'utente usa il sito di playstore e lo installa a distanza, allora non funziona. Qualcuno ha un'idea per una soluzione alternativa in tal caso? – user2641233

+0

Guardando il commento precedente, questo sembra duplicare [Installa referrer non sta rilevando sul mercato web Android] (http://stackoverflow.com/questions/10072467/install-referrer-is-not-tracking-on-android-web -market) –

risposta

3

Non so una soluzione alternativa, ma il problema è noto a Google.

Google Play campagna di misura attualmente non supporta web-to-dispositivo installa avviato dallo Store web Play.

Known Issues

+0

Il collegamento della documentazione e la sezione "Problemi noti" si riferiscono a legacy v2. Dalla versione successiva, manca l'intera sezione "Problemi noti". Quindi, la funzione dovrebbe funzionare ora? Per me, non sembra, cioè, il problema "nessun referrer via mercato web" esiste ancora. Vedi anche http://stackoverflow.com/q/10072467/1097104 –