2014-10-30 3 views
2

Я хочу добавить аналитику поддержки v4 моего app.I следит этот учебник: http://java.dzone.com/articles/working-google-analytics-apiAnalytics v4 реализует

я копирую этот класс в моем приложении:

public class MyApplication extends Application { 

// The following line should be changed to include the correct property id. 
private static final String PROPERTY_ID = "UX-XXXXXXXX-X"; 

//Logging TAG 
private static final String TAG = "MyApp"; 

public static int GENERAL_TRACKER = 0; 

public enum TrackerName { 
APP_TRACKER, // Tracker used only in this app. 
GLOBAL_TRACKER, // Tracker used by all the apps from a company. eg: roll-up tracking. 
ECOMMERCE_TRACKER, // Tracker used by all ecommerce transactions from a company. 
} 

HashMap<TrackerName, Tracker> mTrackers = new HashMap<TrackerName, Tracker>(); 

public MyApplication() { 
super(); 
} 

synchronized Tracker getTracker(TrackerName trackerId) { 
if (!mTrackers.containsKey(trackerId)) { 

GoogleAnalytics analytics = GoogleAnalytics.getInstance(this); 
Tracker t = (trackerId == TrackerName.APP_TRACKER) ? analytics.newTracker(R.xml.app_tracker) 
: (trackerId == TrackerName.GLOBAL_TRACKER) ? analytics.newTracker(PROPERTY_ID) 
: analytics.newTracker(R.xml.ecommerce_tracker); 
mTrackers.put(trackerId, t); 

} 
return mTrackers.get(trackerId); 
} 
} 

Но я получаю сообщение об ошибке для enum error: The member enum TrackerName must be defined inside a static member type

Как решить эту проблему?

ответ

0

Я следовал тому же учебнику. У меня была та же проблема, и я просто ее исправил.
Вам нужно создать другой отдельный класс с именем MyApplication. Тогда не забудьте зайти в свой манифест и добавить этот элемент приложения:

<application android:name=".YourApplication"... 
</application> 

Удачи!

Смежные вопросы