2013-08-01 46 views
8

我有一個Android應用程序,用戶必須註冊。在發送註冊時,我想發送PlayStore(utm_source等)的參數來知道用戶來自哪個活動。使用自己的BroadcastReceiver進行廣告活動測量

所以這個想法是使用自己的BroadcastReceiver INSTALL_REFERRER,其中我保存 參數到一個文件。當用戶註冊時,我會閱讀文件併發送內容。

所以我做了接收器:

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

而且,在AndroidManifest.xml中我使用:

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

當我使用的測試場景,從谷歌它的工作原理和方法的onReceive在我的廣播接收器是調用。

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

但是,當我嘗試從PlayStore,然後沒有什麼被稱爲。

有沒有人想法如何在應用程序中抓取PlayStore的廣告系列參數?

+0

現在我發現,如果用戶直接與Play商店應用安裝在手機上的應用程序的工作原理。 但是,當用戶使用playstore網站並安裝它遠程時,它不起作用。 有沒有人在這種情況下提出解決方法? – user2641233

+0

看着以前的評論,這似乎重複[安裝referrer是不跟蹤在Android網絡市場](http://stackoverflow.com/questions/10072467/install-referrer-is-not-tracking-on-android-web -market) –

回答

3

我不知道解決方法,但Google已知問題。

Google Play Campaign Measurement目前不支持 從網絡Play商店啓動的網絡到設備安裝。

Known Issues

+0

文檔鏈接和「已知問題」部分適用於舊版v2。從更高版本開始,整個「已知問題」部分丟失。那麼,該功能現在應該工作嗎?對我而言,它似乎不是,即「沒有通過網絡市場的推薦人」問題依然存在。另見http://stackoverflow.com/q/10072467/1097104 –

相關問題