/** * Gets the default {@link Tracker} for this {@link Application}. * @return tracker */ synchronized public Tracker getDefaultTracker() { // To enable debug logging use: adb shell setprop log.tag.GAv4 DEBUG if (sTracker == null) { sTracker = sAnalytics.newTracker(R.xml.global_tracker); } return sTracker; } }
/** * Record a screen view hit for the visible {@link ImageFragment} displayed * inside {@link FragmentPagerAdapter}. */ private void sendScreenImageName() { String name = getCurrentImageTitle(); // [START screen_view_hit] Log.i(TAG, "Setting screen name: " + name); mTracker.setScreenName("Image~" + name); mTracker.send(new HitBuilders.ScreenViewBuilder().build()); // [END screen_view_hit] }
public void send(Object screenName, String category, String action, String label) { send(screenName, new HitBuilders.EventBuilder().setCategory(category).setAction(action).setLabel(label).build()); } }
synchronized private Tracker getDefaultTracker() { if (mTracker == null) { GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); /*R.xml.app_tracker contains my Analytics code To use this, go to Google Analytics, and get your code, create a file under res/xml , and save your code as <string name="ga_trackingId">UX-XXXXXXXX-Y</string> */ //mTracker = analytics.newTracker(R.xml.app_tracker); mTracker = analytics.newTracker(R.xml.global_tracker); // mTracker.setAppName("Minimal"); mTracker.enableExceptionReporting(true); try { mTracker.setAppId(getPackageManager().getPackageInfo(getPackageName(), 0).versionName); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); } } return mTracker; }
private void send(Object screenName, Map<String, String> params) { if (IS_ENABLED) { Tracker tracker = getDefaultTracker(); tracker.setScreenName(getClassName(screenName)); tracker.send(params); } }
public void send(Object screenName) { send(screenName, new HitBuilders.ScreenViewBuilder().build()); }
@Override public void onCreate() { super.onCreate(); sAnalytics = GoogleAnalytics.getInstance(this); }
/** * @see com.google.android.gms.analytics.HitBuilders.EventBuilder#setCategory(String) */ @Override public HitInterceptor.EventFacade setCategory(String category) { builder.setCategory(category); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.EventBuilder#setLabel(String) */ @Override public HitInterceptor.EventFacade setLabel(String label) { builder.setLabel(label); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.EventBuilder#setNewSession() */ @Override public HitInterceptor.EventFacade setNewSession() { builder.setNewSession(); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.EventBuilder#addImpression(Product, String) */ @Override public HitInterceptor.EventFacade addImpression(Product product, String impressionList) { builder.addImpression(product, impressionList); return this; } }
/** * @see com.google.android.gms.analytics.HitBuilders.HitBuilder#setPromotionAction(String) */ @Override public HitInterceptor.ScreenViewFacade setPromotionAction(String action) { builder.setPromotionAction(action); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.HitBuilder#set(String, String) */ @Override public HitInterceptor.ScreenViewFacade set(String paramName, String paramValue) { builder.set(paramName, paramValue); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.EventBuilder#setAll(Map) */ @Override public HitInterceptor.EventFacade setAll(Map<String, String> params) { builder.setAll(params); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.EventBuilder#setProductAction(ProductAction) */ @Override public HitInterceptor.EventFacade setProductAction(ProductAction action) { builder.setProductAction(action); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.EventBuilder#setCampaignParamsFromUrl(String) */ @Override public HitInterceptor.EventFacade setCampaignParamsFromUrl(String utmParams) { builder.setCampaignParamsFromUrl(utmParams); return this; }
/** * @see com.google.android.gms.analytics.HitBuilders.HitBuilder#setCustomDimension(int, String) */ @Override public HitInterceptor.ScreenViewFacade setCustomDimension(int index, String dimension) { builder.setCustomDimension(index, dimension); return this; }
public void send(Object screenName, String category, String action) { send(screenName, new HitBuilders.EventBuilder().setCategory(category).setAction(action).build()); }
@Override public void screen(String screenName) { // Set screen name. tracker.setScreenName(screenName); // Send a screen view. tracker.send(new HitBuilders.ScreenViewBuilder().build()); analytics.dispatchLocalHits(); } }
@Override public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()) { case R.id.menu_share: // [START custom_event] mTracker.send(new HitBuilders.EventBuilder() .setCategory("Action") .setAction("Share") .build()); // [END custom_event] String name = getCurrentImageTitle(); String text = "I'd love you to hear about " + name; Intent sendIntent = new Intent(); sendIntent.setAction(Intent.ACTION_SEND); sendIntent.putExtra(Intent.EXTRA_TEXT, text); sendIntent.setType("text/plain"); startActivity(sendIntent); break; } return false; }