9

When i am trying to get tracker in my activity it show error that -this method is undefine "getactivity()" in google analytic v4

// Get tracker.
    Tracker t = ((AnalyticsSampleApp) getActivity().getApplication())
            .getTracker(TrackerName.APP_TRACKER);
user3736720
  • 139
  • 2
  • 6

2 Answers2

23

If you haven't done so already, create a class MyApplication extends Application for your app, and make sure you add it to your manifest as below (the property that matters here is android:name, I've removed the other xml properties for clarity).

<application
    android:name="mypackagename.MyApplication"
    ... >

Then, in your MyApplication class, create a method getTracker as per Google Analytics v4 documentation https://developers.google.com/analytics/devguides/collection/android/v4/#tracking-methods

Then, use

Tracker t = ((MyApplication) getApplication())
        .getTracker(TrackerName.APP_TRACKER);
FreewheelNat
  • 2,907
  • 1
  • 20
  • 12
0

I too faced this issue a little while back. To solve it I, as mentioned above, removed getActivity() as well as adding .MyApplication to android:name in the manifest. However I needed to add MyApplication before TrackerName as shown below.

Tracker t = ((MyApplication) getApplication()).getTracker(MyApplication.TrackerName.APP_TRACKER);

Hope this helps

Whereslee
  • 123
  • 10