コード例 #1
0
    /// <summary>
    /// Campaign tapped
    /// </summary>
    public void TapOnCampaign()
    {
        // [Analytics]
        OnTap?.Invoke();

        // Set the correct store URL
        var installerStore = InstallerSourceUtil.GetInstallSource();

        switch (installerStore)
        {
        case InstallerSource.eAppleAppStore:
            Application.OpenURL(campaignItem.linkiOS);
            break;

        case InstallerSource.eSamsungGalaxyStore:
            Application.OpenURL(campaignItem.linkSamsung);
            break;

        case InstallerSource.eSkillzStore:
            Application.OpenURL(campaignItem.linkSkillz);
            break;

        default:
            Application.OpenURL(campaignItem.linkSkillz);
            break;
        }
    }
コード例 #2
0
    private List <xPromoCampaignIdProb> ReBuildFileteredList()
    {
        filteredCampaignIdProbList = new List <xPromoCampaignIdProb>();

        var  now      = DateTime.Now;
        long sumProbs = 0;

        if (campaignListData.games != null)
        {
            // Convert the dates to the local format
            for (int i = 0; i < campaignListData.games.Length; i++)
            {
                if (campaignListData.games[i].startDateTime <= now && now <= campaignListData.games[i].endDateTime)
                {
                    sumProbs += campaignListData.games[i].prob;
                }
            }



            // Set the accumulated probabilities
            float accumProb = 0f;
            for (int i = 0; i < campaignListData.games.Length; i++)
            {
                var installSource = InstallerSourceUtil.GetInstallSource();
                if (installSource == InstallerSource.eAppleAppStore && string.IsNullOrEmpty(campaignListData.games[i].linkiOS))
                {
                    continue;
                }
                if (installSource == InstallerSource.eSamsungGalaxyStore && string.IsNullOrEmpty(campaignListData.games[i].linkSamsung))
                {
                    continue;
                }
                if (installSource == InstallerSource.eSkillzStore && string.IsNullOrEmpty(campaignListData.games[i].linkSkillz))
                {
                    continue;
                }

                if (campaignListData.games[i].startDateTime <= now && now <= campaignListData.games[i].endDateTime &&
                    !HasReachTodayMaxViews(campaignListData.games[i]) &&
                    !HasReachTotalMaxViews(campaignListData.games[i]))
                {
                    accumProb += (campaignListData.games[i].prob / (float)sumProbs);

                    filteredCampaignIdProbList.Add(new xPromoCampaignIdProb {
                        campaignId = campaignListData.games[i].campaignId, accumProb = accumProb
                    });
                }
            }
        }

        // DEBUG
        logger.LogFilteredCampaigns(filteredCampaignIdProbList);

        return(filteredCampaignIdProbList);
    }