2015-06-17 8 views
6

Ich versuche, "Belohnung für Einladungen" Logik zu integrieren. Was ich dafür versuche, ist, dass ich für jeden Benutzer eine eindeutige URL erzeuge. Wenn ein Freund auf die URL klickt, wird er auf eine Seite und dann in den Playstore weitergeleitet. Auf der Seite wird ein Cookie mit der eindeutigen ID auf dem Gerät gespeichert.Android Cookies (Belohnung für Einladungen)

Hinweis - (Benutzer den Link in jedem Browser öffnen kann)

Wenn die App auf dem Gerät gestartet wird, hole ich für die Cookies, die gespeichert wurde oben und falls vorhanden mit der gleichen an den Server senden, wo der Benutzer ist leicht zu erkennen und zu belohnen.

Das sah ziemlich geradlinig aus, aber ich bin an dem Punkt fest, wo ich den Cookie lesen und die ID extrahieren muss.

Ich lese this, die besagt, dass es nicht möglich ist. :(Ich habe auch versucht, die unten

List<Cookie> cookies = new DefaultHttpClient().getCookieStore() 
      .getCookies(); 
    if (cookies.isEmpty()) { 
     System.out.println("None Cookies"); 
    } else { 
     for (int i = 0; i < cookies.size(); i++) { 
      System.out.println("Cookie - " + cookies.get(i).toString()); 
     } 
    } 

aber kein Glück Ich erhalte "Keine Cookies"

Meine Fragen:..

  1. Ist es möglich, das Cookie zu lesen, die erstellt wurde? wenn ja, wie?
  2. wenn nein, eine Alternative, wie ich die obige Funktionalität erreichen kann?

Tha nks für einen Zwischenstopp.

Antwort

1

Ich fand eine Alternative zu meiner obigen Anforderung mit Campaign Measurement.

Dies kann in 3 einfachen Schritten zusätzlich zur Integration von google-play-services_lib getan werden.

  1. Erstellen Sie Ihre Einladungs-URL.

    Welche Play-Store-URL + Ihre einzigartige Code sein wird.Zum Beispiel ist mein Code ABCDEX52362XYZ dann wird die URL aussehen https://play.google.com/store/apps/details?id=com.app.yourappspackagename&referrer=utm_source%3DABCDEX52362XYZ

& Referrer = utm_source% 3DABCDEX52362XYZ die wichtige Schlüssel hier ist. Weitere Informationen zum Erstellen dieser URL finden Sie unter here.

Google sagt -

Wenn Ihre App von Google Play Store heruntergeladen wird, die Play Store App sendet eine INTENT_REFERRER, um Ihre Anwendung während der Installation. Diese Absicht enthält den Wert des Referrer-Parameters des Links, über den die Google Play Store-Seite Ihrer App aufgerufen wird, sofern eine vorhanden war.

  1. Fügen Sie den Google Analytics-Empfänger AndroidManifest.xml Datei

    <receiver android:name="com.app.receiver.ReferrerCatcher" android:exported="true"> 
        <intent-filter> 
         <action android:name="com.android.vending.INSTALL_REFERRER" /> 
        </intent-filter> 
    </receiver> 
    
  2. ReferrerCatcher Rundfunkempfänger Erstellen Sie den Einladungscode zu erfassen.

    public class ReferrerCatcher extends BroadcastReceiver { 
    
    private static String referrer = ""; 
    
    @Override 
    public void onReceive(Context context, Intent intent) {    
    
        referrer = ""; 
        Bundle extras = intent.getExtras(); 
        if (extras != null) { 
         referrer = extras.getString("referrer"); 
         if (referrer != null) { 
    
          String invitationCode = referrer.replace("utm_source=",""); 
    
          //referrer is your code plus the google keys, so you need to handle it   
    
         } 
        } 
    
        } 
    
    } 
    

Hoffnung, das hilft. Glückliche Kodierung. :)

2

Interessantes Konzept.

Wie bei # 1 verletzen Sie das standardmäßige Sicherheitsprotokoll von Android, bei dem Apps keine privaten Daten anderer Apps lesen können. Das beinhaltet alle Browser auf Android mit ihren Cookies die voneinander isoliert sind, inklusive Ihrer App.

Für # 2, warum nicht stattdessen eine kurze Passphrase (die leicht zu merken ist. Nehmen Sie ein Stichwort von gfycat URL-Generation, obwohl versuchen, den Umfang und die Wortgröße zu begrenzen) auf dieser einzigen "Erfolg" oder die Seite "Belohnungen verdient", bevor Sie zum Play Store weitergeleitet werden? (Nicht sicher, ob Sie die Play Store-Seite in ein iframe-Tag einbetten können).

Noch besser, wenn die URL auf die Landing-Site Ihrer App verweist, aber bestimmte Elemente auf der Seite umschaltet, um die Passphrase anzuzeigen und den Download-Button vielleicht attraktiver macht (obwohl er nur auf die Play Store-Seite verweist).

Benutzer können dann die kurze eindeutige Passphrase verwenden, um Prämien in der App freizuschalten.

Ich sehe große Neuheit in Ihrer Idee, aber das ist nur ein Vorschlag natürlich, da Sie nicht viel tun können, um die Sicherheitsrichtlinien zu umgehen.

Verwandte Themen