Search in sources :

Example 1 with Identify

use of com.amplitude.api.Identify in project teamward-client by Neamar.

the class Tracker method trackGameViewed.

static void trackGameViewed(Activity activity, Account account, Game game, String defaultTab, Boolean shouldDisplayChampionName, String source) {
    JSONObject j = account.toJsonObject();
    LolApplication application = getApplication(activity);
    try {
        j.putOpt("game_map_id", game.mapId);
        j.putOpt("game_map_name", activity.getString(getMapName(game.mapId)));
        j.putOpt("queue", game.queue);
        j.putOpt("game_id", game.gameId);
        j.putOpt("default_tab", defaultTab);
        j.putOpt("display_champion_name", shouldDisplayChampionName);
        j.putOpt("source", source);
        // Is this the first account added to the app?
        AccountManager accountManager = new AccountManager(activity);
        int accountIndex = accountManager.getAccountIndex(account);
        j.putOpt("account_index", accountIndex);
        // Add metrics related to the current player
        Player p = game.getPlayerByAccount(account);
        if (p != null) {
            j.putOpt("champion", p.champion.id);
            j.putOpt("champion_name", p.champion.name);
            j.putOpt("champion_mastery", p.champion.mastery);
            j.putOpt("champion_role", p.champion.role);
            j.putOpt("player_rank", p.rank.tier.isEmpty() ? p.rank.oldTier : p.rank.tier);
            j.putOpt("player_level", p.summoner.level);
            j.putOpt("player_champion_index", p.champion.championRank);
            j.putOpt("spell_d", p.spellD.id);
            j.putOpt("spell_d_name", p.spellD.name);
            j.putOpt("spell_f", p.spellF.id);
            j.putOpt("spell_f_name", p.spellF.name);
            if (accountIndex == 0) {
                // For main user: add data to profile
                JSONObject jp = new JSONObject();
                jp.put("player_rank", p.rank.tier.isEmpty() ? p.rank.oldTier : p.rank.tier);
                jp.put("last_viewed_game", new Date());
                trackProfile(activity, jp);
            }
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }
    track(activity, "Game viewed", j);
    Identify identify = new Identify().add("games_viewed_count", 1).set("last_viewed_game", new Date().toString());
    Amplitude.getInstance().identify(identify);
}
Also used : Player(fr.neamar.lolgamedata.pojo.Player) JSONObject(org.json.JSONObject) JSONException(org.json.JSONException) Date(java.util.Date) Identify(com.amplitude.api.Identify)

Aggregations

Identify (com.amplitude.api.Identify)1 Player (fr.neamar.lolgamedata.pojo.Player)1 Date (java.util.Date)1 JSONException (org.json.JSONException)1 JSONObject (org.json.JSONObject)1