Esempio n. 1
0
 protected override void _pushEventSocialActionFailed(Provider provider, SocialActionType actionType, string message, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     soomlaProfile_PushEventSocialActionFailed(provider.ToString(), actionType.ToString(), message, payload);
 }
Esempio n. 2
0
 protected override void _pushEventLogoutFinished(Provider provider)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     soomlaProfile_PushEventLogoutFinished(provider.ToString());
 }
 protected override void _pushEventLoginFailed(Provider provider, string message, bool autoLogin, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     soomlaProfile_PushEventLoginFailed(provider.ToString(), message, autoLogin, payload);
 }
 protected override void _pushEventReportScoreFinished(ReportScoreFinishedEvent ev)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
     {
         return;
     }
     soomlaProfile_PushEventReportScoreFinished(ev.Provider.ToString(), ev.Destination.toJSONObject().ToString(), ev.Score.toJSONObject().ToString(), ev.Payload);
 }
 protected override void _pushEventGetFeedFailed(Provider provider, string message, bool fromStart, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     soomlaProfile_PushEventGetFeedFailed(provider.ToString(), message, fromStart, payload);
 }
 protected override void _pushEventLoginFinished(UserProfile userProfile, bool autoLogin, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(userProfile.Provider))
     {
         return;
     }
     soomlaProfile_PushEventLoginFinished(userProfile.toJSONObject().print(), autoLogin, payload);
 }
Esempio n. 7
0
 protected override void _pushEventSubmitScoreFailed(SubmitScoreFailedEvent ev)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
     {
         return;
     }
     soomlaProfile_PushEventSubmitScoreFailed(ev.Provider.ToString(), ev.Destination.toJSONObject().ToString(), ev.ErrorDescription, ev.Payload);
 }
Esempio n. 8
0
 protected override void _pushEventShowLeaderboards(ShowLeaderboardsEvent ev)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
     {
         return;
     }
     soomlaProfile_PushEventShowLeaderboards(ev.Provider.ToString(), ev.Payload);
 }
Esempio n. 9
0
 protected override void _pushEventGetScoresFailed(GetScoresFailedEvent ev)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
     {
         return;
     }
     soomlaProfile_PushEventGetScoresFailed(ev.Provider.ToString(), ev.From.toJSONObject().ToString(), ev.ErrorDescription, ev.FromStart, ev.Payload);
 }
Esempio n. 10
0
 protected override void _pushEventGetLeaderboardsFailed(GetLeaderboardsFailedEvent ev)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
     {
         return;
     }
     soomlaProfile_PushEventGetLeaderboardsFailed(ev.Provider.ToString(), ev.ErrorDescription, ev.Payload);
 }
Esempio n. 11
0
 protected override void _pushEventInviteCancelled(Provider provider, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     soomlaProfile_PushEventInviteCancelled(provider.ToString(), SocialActionType.INVITE.ToString(), payload);
 }
Esempio n. 12
0
 protected override void _pushEventLogoutFailed(Provider provider, string message)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     soomlaProfile_PushEventLogoutFailed(provider.ToString(), message);
 }
 protected override void _pushEventLoginCancelled(Provider provider, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     soomlaProfile_PushEventLoginCancelled(provider.ToString(), payload);
 }
Esempio n. 14
0
 protected override void _pushEventLogoutFinished(Provider provider)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventLogoutFinished", provider.ToString());
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
Esempio n. 15
0
 protected override void _pushEventLoginFinished(UserProfile userProfile, bool autoLogin, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(userProfile.Provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventLoginFinished", userProfile.toJSONObject().print(), autoLogin, payload);
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
Esempio n. 16
0
 protected override void _pushEventLoginFailed(Provider provider, string message, bool autoLogin, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventLoginFailed", provider.ToString(), message, autoLogin, payload);
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
Esempio n. 17
0
 protected override void _pushEventSocialActionCancelled(Provider provider, SocialActionType actionType, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventSocialActionCancelled",
                                          provider.ToString(), actionType.ToString(), payload);
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
Esempio n. 18
0
 protected override void _pushEventShowLeaderboards(ShowLeaderboardsEvent ev)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventShowLeaderboards",
                                          ev.Provider.ToString(), ev.Payload);
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
Esempio n. 19
0
 protected override void _pushEventSubmitScoreFailed(SubmitScoreFailedEvent ev)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventSubmitScoreFailed",
                                          ev.Provider.ToString(), ev.Destination.toJSONObject().ToString(), ev.ErrorDescription, ev.Payload);
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
Esempio n. 20
0
 protected override void _pushEventGetContactsStarted(Provider provider, int pageNumber, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventGetContactsStarted",
                                          provider.ToString(), payload);
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
        protected override void _pushEventGetScoresFinished(GetScoresFinishedEvent ev)
        {
            if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
            {
                return;
            }
            List <JSONObject> scoreList = new List <JSONObject>();

            foreach (var sc in ev.Scores.PageData)
            {
                scoreList.Add(sc.toJSONObject());
            }
            JSONObject jsonSc = new JSONObject(scoreList.ToArray());

            soomlaProfile_PushEventGetScoresFinished(ev.Provider.ToString(), ev.From.toJSONObject().ToString(), jsonSc.ToString(), ev.Payload, ev.Scores.HasMore);
        }
        protected override void _pushEventGetLeaderboardsFinished(GetLeaderboardsFinishedEvent ev)
        {
            if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider))
            {
                return;
            }
            List <JSONObject> leaderboardList = new List <JSONObject>();

            foreach (var lb in ev.Leaderboards.PageData)
            {
                leaderboardList.Add(lb.toJSONObject());
            }
            JSONObject jsonLbs = new JSONObject(leaderboardList.ToArray());

            soomlaProfile_PushEventGetLeaderboardsFinished(ev.Provider.ToString(), jsonLbs.ToString(), ev.Payload);
        }
        protected override void _pushEventInviteFinished(Provider provider, string requestId, List <string> invitedIds, string payload)
        {
            if (SoomlaProfile.IsProviderNativelyImplemented(provider))
            {
                return;
            }
            List <JSONObject> invited = new List <JSONObject>();

            foreach (var id in invitedIds)
            {
                invited.Add(JSONObject.StringObject(id));
            }
            JSONObject jsonInvited = new JSONObject(invited.ToArray());

            soomlaProfile_PushEventInviteFinished(provider.ToString(), SocialActionType.INVITE.ToString(), requestId, jsonInvited.ToString(), payload);
        }
        protected override void _pushEventGetFeedFinished(Provider provider, SocialPageData <String> feedPage, string payload)
        {
            if (SoomlaProfile.IsProviderNativelyImplemented(provider))
            {
                return;
            }
            List <JSONObject> feeds = new List <JSONObject>();

            foreach (var feed in feedPage.PageData)
            {
                feeds.Add(JSONObject.StringObject(feed));
            }
            JSONObject jsonFeeds = new JSONObject(feeds.ToArray());

            soomlaProfile_PushEventGetFeedFinished(provider.ToString(), jsonFeeds.ToString(), payload, feedPage.HasMore);
        }
        protected override void _pushEventGetContactsFinished(Provider provider, SocialPageData <UserProfile> contactsPage, string payload)
        {
            if (SoomlaProfile.IsProviderNativelyImplemented(provider))
            {
                return;
            }
            List <JSONObject> profiles = new List <JSONObject>();

            foreach (var profile in contactsPage.PageData)
            {
                profiles.Add(profile.toJSONObject());
            }
            JSONObject contacts = new JSONObject(profiles.ToArray());

            soomlaProfile_PushEventGetContactsFinished(provider.ToString(), contacts.ToString(), payload, contactsPage.HasMore);
        }
Esempio n. 26
0
        /// <summary>
        /// See docs in <see cref="SoomlaProfile.Login"/>
        /// </summary>
        /// <param name="success">Callback function that is called if login was successful.</param>
        /// <param name="fail">Callback function that is called if login failed.</param>
        /// <param name="cancel">Callback function that is called if login was cancelled.</param>
        public override void Login(LoginSuccess success, LoginFailed fail, LoginCancelled cancel)
        {
            FB.Login(this.permissionsStr, (FBResult result) => {
                if (result.Error != null)
                {
                    SoomlaUtils.LogDebug(TAG, "LoginCallback[result.Error]: " + result.Error);
                    fail(result.Error);
                }
                else if (!FB.IsLoggedIn)
                {
                    SoomlaUtils.LogDebug(TAG, "LoginCallback[cancelled]");
                    cancel();
                }
                else
                {
                    checkPermissions("publish_actions", "user_birthday");

                    FB.API("/me/permissions", Facebook.HttpMethod.GET, delegate(FBResult response) {
                        // inspect the response and adapt your UI as appropriate
                        // check response.Text and response.Error
                        SoomlaUtils.LogWarning(TAG, "me/permissions " + response.Text);
                    });

                    FB.API("/me?fields=id,name,email,first_name,last_name,picture",
                           Facebook.HttpMethod.GET, (FBResult result2) => {
                        if (result2.Error != null)
                        {
                            SoomlaUtils.LogDebug(TAG, "ProfileCallback[result.Error]: " + result2.Error);

                            fail(result2.Error);
                        }
                        else
                        {
                            SoomlaUtils.LogDebug(TAG, "ProfileCallback[result.Text]: " + result2.Text);
                            SoomlaUtils.LogDebug(TAG, "ProfileCallback[result.Texture]: " + result2.Texture);
                            string fbUserJson       = result2.Text;
                            UserProfile userProfile = UserProfileFromFBJsonString(fbUserJson);

                            SoomlaProfile.StoreUserProfile(userProfile, true);

                            success(userProfile);
                        }
                    });
                }
            });
        }
Esempio n. 27
0
 protected override void _pushEventInviteFinished(Provider provider, string requestId, List <string> invitedIds, string payload)
 {
     if (SoomlaProfile.IsProviderNativelyImplemented(provider))
     {
         return;
     }
     AndroidJNI.PushLocalFrame(100);
     using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
         List <JSONObject> invited = new List <JSONObject>();
         foreach (var id in invitedIds)
         {
             invited.Add(JSONObject.StringObject(id));
         }
         JSONObject jsonInvited = new JSONObject(invited.ToArray());
         ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventInviteFinished",
                                          provider.ToString(), SocialActionType.INVITE.ToString(), requestId, jsonInvited.ToString(), payload);
     }
     AndroidJNI.PopLocalFrame(IntPtr.Zero);
 }
        /// <summary>
        /// See docs in <see cref="SoomlaProfile.Login"/>
        /// </summary>
        /// <param name="success">Callback function that is called if login was successful.</param>
        /// <param name="fail">Callback function that is called if login failed.</param>
        /// <param name="cancel">Callback function that is called if login was cancelled.</param>
        public override void Login(LoginSuccess success, LoginFailed fail, LoginCancelled cancel)
        {
            FB.Login(this.loginPermissionsStr, (FBResult result) => {
                if (result.Error != null)
                {
                    SoomlaUtils.LogDebug(TAG, "LoginCallback[result.Error]: " + result.Error);
                    fail(result.Error);
                }
                else if (!FB.IsLoggedIn)
                {
                    SoomlaUtils.LogDebug(TAG, "LoginCallback[cancelled]");
                    cancel();
                }
                else
                {
                    this.fetchPermissions(() => {
                        FB.API("/me?fields=id,name,email,first_name,last_name,picture",
                               Facebook.HttpMethod.GET, (FBResult meResult) => {
                            if (meResult.Error != null)
                            {
                                SoomlaUtils.LogDebug(TAG, "ProfileCallback[result.Error]: " + meResult.Error);
                                fail(meResult.Error);
                            }
                            else
                            {
                                SoomlaUtils.LogDebug(TAG, "ProfileCallback[result.Text]: " + meResult.Text);
                                SoomlaUtils.LogDebug(TAG, "ProfileCallback[result.Texture]: " + meResult.Texture);
                                string fbUserJson       = meResult.Text;
                                UserProfile userProfile = UserProfileFromFBJsonString(fbUserJson);
                                userProfile.AccessToken = FB.AccessToken;

                                SoomlaProfile.StoreUserProfile(userProfile, true);

                                success(userProfile);
                            }
                        });
                    },
                                          (string errorMessage) => {
                        fail(errorMessage);
                    });
                }
            });
        }
Esempio n. 29
0
        protected override void _pushEventGetContactsFinished(Provider provider, SocialPageData <UserProfile> contactsPage, string payload)
        {
            if (SoomlaProfile.IsProviderNativelyImplemented(provider))
            {
                return;
            }
            List <JSONObject> profiles = new List <JSONObject>();

            foreach (var profile in contactsPage.PageData)
            {
                profiles.Add(profile.toJSONObject());
            }
            JSONObject contacts = new JSONObject(profiles.ToArray());

            AndroidJNI.PushLocalFrame(100);
            using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
                ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventGetContactsFinished",
                                                 provider.ToString(), contacts.ToString(), payload, contactsPage.HasMore);
            }
            AndroidJNI.PopLocalFrame(IntPtr.Zero);
        }
Esempio n. 30
0
        protected override void _pushEventGetFeedFinished(Provider provider, SocialPageData <String> feedPage, string payload)
        {
            if (SoomlaProfile.IsProviderNativelyImplemented(provider))
            {
                return;
            }
            List <JSONObject> feeds = new List <JSONObject>();

            foreach (var feed in feedPage.PageData)
            {
                feeds.Add(JSONObject.StringObject(feed));
            }
            JSONObject feedJson = new JSONObject(feeds.ToArray());

            AndroidJNI.PushLocalFrame(100);
            using (AndroidJavaClass jniSoomlaProfile = new AndroidJavaClass("com.soomla.profile.unity.ProfileEventHandler")) {
                ProfileJNIHandler.CallStaticVoid(jniSoomlaProfile, "pushEventGetFeedFinished",
                                                 provider.ToString(), feedJson.ToString(), payload, feedPage.HasMore);
            }
            AndroidJNI.PopLocalFrame(IntPtr.Zero);
        }