2013-08-01 8 views
8

Mam aplikację na Androida, na której użytkownik musi się zarejestrować. Podczas wysyłania rejestracji chcę wysłać parametry z PlayStore (utm_source itp.), Aby dowiedzieć się, z którego źródła pochodzi użytkownik.Pomiar kampanii za pomocą własnego BroadcastReceiver

Więc pomysł polegał na użyciu własnego BroadcastReceiver dla INSTALL_REFERRER, w którym zapisuję parametry do pliku. Kiedy użytkownik zarejestruje się, odczytam plik i wyślę treść.

Więc zrobiłem odbiornik:

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); 
} 

A w AndroidManifest.xml używam:

<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> 

kiedy używam scenariusz testowy z google działa i metody onReceive w moim BroadcastReceiver jest nazywa.

./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" 

Ale gdy próbuję go od PlayStore wtedy nic nie jest tzw.

Ma ktoś pomysł, jak grap parametrów kampanii z PlayStore w aplikacji?

+0

teraz okazało się, że to działa, jeśli użytkownik zainstaluje aplikację w telefonie bezpośrednio z aplikacji w Sklepie Play. Ale gdy użytkownik korzysta z witryny playstore i instaluje ją zdalnie, to nie działa. Czy ktoś ma pomysł na obejście tego problemu? – user2641233

+0

Patrząc na poprzedni komentarz, zdaje się on powielać [Zainstaluj stronę odsyłającą nie śledzi na Android rynku] (http://stackoverflow.com/questions/10072467/install-referrer-is-not-tracking-on-android-web -market) –

Odpowiedz

3

Nie znam rozwiązania, ale problem jest znany Google.

Google Play Pomiar kampanii aktualnie nie obsługuje web-to-device instaluje inicjowane z Web Store Play.

Known Issues

+0

Link do dokumentacji i sekcja "znane problemy" dotyczą starszych wersji v2. W nowszej wersji brakuje sekcji "znanych problemów". Więc czy funkcja powinna działać? Wydaje mi się, że nie, to znaczy nadal istnieje problem "brak strony odsyłającej przez Internet". Zobacz także http://stackoverflow.com/q/10072467/1097104 –

Powiązane problemy