Exemplo n.º 1
0
    public static AndroidJavaObject ToAndroidUserProfile(this YandexAppMetricaUserProfile self)
    {
        AndroidJavaObject userProfile = null;

        if (self != null)
        {
            using (var userProfileClass = new AndroidJavaClass("com.yandex.metrica.profile.UserProfile")) {
                var builder = userProfileClass.CallStatic <AndroidJavaObject> ("newBuilder");
                List <YandexAppMetricaUserProfileUpdate> updates = self.GetUserProfileUpdates();
                foreach (var userProfileUpdate in updates)
                {
                    builder.Call <AndroidJavaObject> ("apply", userProfileUpdate.ToAndroidUserProfileUpdate());
                }
                userProfile = builder.Call <AndroidJavaObject> ("build");
            }
        }
        return(userProfile);
    }
Exemplo n.º 2
0
    public static Hashtable ToHashtable(this YandexAppMetricaUserProfile self)
    {
        if (self == null)
        {
            return(null);
        }
        var data = new Hashtable();
        var userProfileUpdates = self.GetUserProfileUpdates();

        for (int i = 0; i < userProfileUpdates.Count; ++i)
        {
            data[i.ToString()] = new Hashtable {
                { "AttributeName", userProfileUpdates[i].AttributeName },
                { "MethodName", userProfileUpdates[i].MethodName },
                { "Key", userProfileUpdates[i].Key },
                { "Values", userProfileUpdates[i].Values }
            };
        }
        return(data);
    }
Exemplo n.º 3
0
    public static AndroidJavaObject ToAndroidUserProfile(this YandexAppMetricaUserProfile self)
    {
        AndroidJavaObject result = null;

        if (self != null)
        {
            using (AndroidJavaClass androidJavaClass = new AndroidJavaClass("com.yandex.metrica.profile.UserProfile"))
            {
                AndroidJavaObject androidJavaObject = androidJavaClass.CallStatic <AndroidJavaObject>("newBuilder", new object[0]);
                List <YandexAppMetricaUserProfileUpdate> userProfileUpdates = self.GetUserProfileUpdates();
                foreach (YandexAppMetricaUserProfileUpdate item in userProfileUpdates)
                {
                    androidJavaObject.Call <AndroidJavaObject>("apply", new object[1]
                    {
                        item.ToAndroidUserProfileUpdate()
                    });
                }
                return(androidJavaObject.Call <AndroidJavaObject>("build", new object[0]));
            }
        }
        return(result);
    }
Exemplo n.º 4
0
 public override void ReportUserProfile(YandexAppMetricaUserProfile userProfile)
 {
     ymm_reportUsertProfileJSON(JsonStringFromDictionary(userProfile.ToHashtable()));
 }
Exemplo n.º 5
0
 public override void ReportUserProfile(YandexAppMetricaUserProfile userProfile)
 {
     metricaClass.CallStatic("reportUserProfile", userProfile.ToAndroidUserProfile());
 }
Exemplo n.º 6
0
 public override void ReportUserProfile(YandexAppMetricaUserProfile userProfile)
 {
 }
Exemplo n.º 7
0
 public abstract void ReportUserProfile(YandexAppMetricaUserProfile userProfile);