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); }
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); }
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); }
protected override void _pushEventShowLeaderboards(ShowLeaderboardsEvent ev) { if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider)) { return; } soomlaProfile_PushEventShowLeaderboards(ev.Provider.ToString(), ev.Payload); }
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); }
protected override void _pushEventGetLeaderboardsFailed(GetLeaderboardsFailedEvent ev) { if (SoomlaProfile.IsProviderNativelyImplemented(ev.Provider)) { return; } soomlaProfile_PushEventGetLeaderboardsFailed(ev.Provider.ToString(), ev.ErrorDescription, ev.Payload); }
protected override void _pushEventInviteCancelled(Provider provider, string payload) { if (SoomlaProfile.IsProviderNativelyImplemented(provider)) { return; } soomlaProfile_PushEventInviteCancelled(provider.ToString(), SocialActionType.INVITE.ToString(), payload); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
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); }
/// <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); } }); } }); }
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); }); } }); }
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); }
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); }