2012-10-16 3 views
1

J'utilise actuellement ActionBarSherlock dans mon application et je cherche à mettre en œuvre EasyTracker de Google pour l'analyse. J'ai vu que TrackedActivity appelle simplement les fonctions sevaral (getTracker(), trackStartActivity (Contexte), trackActivityStop (Context) et trackActivityRetainNonConfigurationInstance()) dans différentes parties du cycle de vie.Utiliser EasyTracker avec FragmentActivity et ActionBarSherlock

Depuis que je suis déjà SherlockFragmentActivity extension que ma classe de base, je vais avoir besoin d'inclure ces appels dans leurs parties respectives du cycle de vie. La seule question que je vais avoir est avec l'appel suivant:

@Override 
public Object onRetainNonConfigurationInstance() 
{ 
    Object o = super.onRetainNonConfigurationInstance(); 

    // This call is needed to ensure that configuration changes (like 
    // orientation) don't result in new sessions. Remove this line if you want 
    // configuration changes to for a new session in Google Analytics. 
    EasyTracker.getTracker().trackActivityRetainNonConfigurationInstance(); 
    return o; 
} 

Le problème est que cet appel est finale FragmentActivity donc je ne pense pas qu'il peut être annulé.

Comment devrais-je traiter les rotations afin que les nouvelles sessions ne perturbent pas les données envoyées avec le serveur?

En outre, en guise de note secondaire, il devrait y avoir une sortie logcat de l'appel de trackStartActivity (Context) avec le paramètre ga_debug défini sur true?

merci à l'avance :)

Répondre

1

La meilleure solution que j'ai trouvé ajouter un drapeau booléen dans onSaveInstanceState de sorte que le compteur d'activité de session ne serait pas augmentée. Étonnamment simple tout compte fait :)

Questions connexes