获取Google广告系列跟踪

问题描述:

Google Analytics正在使用utm_source,utm_campaign和utm_medium存储我在URL中传递的信息。现在我想知道如何在用户打开应用程序时获取这些信息?我看到这在我的日志:”获取Google广告系列跟踪

03-18 20:19:48.633: I/GAV2(32317): Thread[GAThread,5,main]: Campaign found: utm_source=source value tracking tara&utm_medium=medium value tracking tara&utm_campaign=campaign value tracking tara androidlitetrackingtara 

我有这个在我的应用程序清单:

<service android:name="com.google.analytics.tracking.android.CampaignTrackingService" /> 

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

我尝试从意图抓住它,但数据是不存在的。有任何想法吗?

+0

我有同样的问题。运气好的话? – 2013-09-16 17:24:30

确保您使用的是v3 SDK。这里是指令页:

https://developers.google.com/analytics/devguides/collection/android/v3/campaigns

如果INTENT_REFERRER不工作,然后尝试在页面后面给出了地图的例子。

此外,请确保您在下载应用程序和GA中显示的数据之间有足够的时间。 GA可能需要24小时才能显示数据。

创建您自己的广播接收器。存储数据并将其传递到谷歌分析后

public class InstallReceiver extends BroadcastReceiver { 

@Override 
public void onReceive(Context context, Intent intent) { 
    // TODO Auto-generated method stub 
    Log.d("InstallReceiver", "onReceive"); 

    try { 
     // get referrer value 

     Bundle extras = intent.getExtras(); 
     if (extras != null) { 

      GoogleAnalytics.getInstance(context).getLogger().setLogLevel(LogLevel.VERBOSE); 
      String referrerValue = extras.getString("referrer"); 
// Handle data. Save it 


      Log.d("InstallReceiver", "referrerValue=" + referrerValue); 
      String afterDecode = URLDecoder.decode(referrerValue, "UTF-8"); 
      String[] temp = afterDecode.split("&"); 
      String agencyId = temp[0].replace("utm_source=", ""); 


      Utils.saveAgencyId(context.getApplicationContext(), agencyId); 

// transfer intent to google receiver. 


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

    } catch (Exception e) { 
     // TODO: handle exception 
     e.printStackTrace(); 
    } 
}