public bool LoadConfiguration(string filePath) { var fullPath = Path.Combine(Application.streamingAssetsPath, filePath); GetSocialDebugLogger.D("Loading configuration at path: " + fullPath); return(_gs_loadConfiguration(fullPath)); }
static void SendInvite(string referralDataUrl, Uri imageUrl, Action completeCallback, Action cancelCallback, Action <GetSocialError> errorCallback) { GetSocialDebugLogger.D("Sending Facebook invite with URL: " + referralDataUrl); FB.Mobile.AppInvite(new Uri(referralDataUrl), imageUrl, result => { #if UNITY_ANDROID && USE_GETSOCIAL_UI // Restore the hidden view after we have received the result GetSocialUi.RestoreView(); #endif GetSocialDebugLogger.D("Sending invite finished: " + result); if (result.Cancelled) { cancelCallback(); return; } if (!string.IsNullOrEmpty(result.Error)) { var errorMsg = "Failed sending app invite: " + result.Error; Debug.LogError(errorMsg); errorCallback(new GetSocialError(errorMsg)); return; } completeCallback(); }); }
static void SendInvite(string referralDataUrl, Action completeCallback, Action cancelCallback, Action <GetSocialError> errorCallback) { GetSocialDebugLogger.D("Sharing link on Facebook : " + referralDataUrl); FB.Mobile.ShareDialogMode = ShareDialogMode.WEB; FB.ShareLink(new Uri(referralDataUrl), callback: result => { // reopen GetSocialUi // because othewise it cannot deliever the result back to the app GetSocialUi.RestoreView(); GetSocialDebugLogger.D("Sharing link finished: " + result); if (result.Cancelled) { cancelCallback(); return; } if (!string.IsNullOrEmpty(result.Error)) { var errorMsg = "Failed to share link: " + result.Error; Debug.LogError(errorMsg); errorCallback(new GetSocialError(errorMsg)); return; } completeCallback(); }); }
public static void OnTagClicked(IntPtr tagClickListenerPtr, string tag) { GetSocialDebugLogger.D(string.Format("OnTagClicked for tag {0}", tag)); if (tagClickListenerPtr != IntPtr.Zero) { tagClickListenerPtr.Cast <Action <string> >().Invoke(tag); } }
public static void OnMentionClicled(IntPtr mentionClickListenerPtr, string mention) { GetSocialDebugLogger.D(string.Format("OnMentionClicled for user {0}", mention)); if (mentionClickListenerPtr != IntPtr.Zero) { mentionClickListenerPtr.Cast <Action <string> >().Invoke(mention); } }
public static void OnAvatarClicked(IntPtr onAvatarClickedPtr, string serializedUser) { GetSocialDebugLogger.D(string.Format("OnAvatarClicked for user {0}", serializedUser)); if (onAvatarClickedPtr != IntPtr.Zero) { var user = GetSocialJsonBridge.FromJson <User>(serializedUser); onAvatarClickedPtr.Cast <Action <User> >().Invoke(user); } }
public static void OnActionButtonClick(IntPtr onButtonClickedPtr, string actionId, string serializedActivityPost) { GetSocialDebugLogger.D(string.Format("OnActionButtonClick for action [{0}], post: {1}", actionId, serializedActivityPost)); if (onButtonClickedPtr != IntPtr.Zero) { var post = new ActivityPost().ParseFromJson(serializedActivityPost.ToDict()); onButtonClickedPtr.Cast <Action <string, ActivityPost> >().Invoke(actionId, post); } }
public static void OnAction(IntPtr actionListenerPtr, string serializedAction) { GetSocialDebugLogger.D(string.Format("OnActionReceived: {0}", serializedAction)); if (actionListenerPtr != IntPtr.Zero) { var action = GetSocialJsonBridge.FromJson <GetSocialAction>(serializedAction); actionListenerPtr.Cast <ActionListener>().Invoke(action); } }
public static void OnAvatarClicked(IntPtr onAvatarClickedPtr, string serializedPublicUser) { GetSocialDebugLogger.D(string.Format("OnAvatarClicked for user {0}", serializedPublicUser)); if (onAvatarClickedPtr != IntPtr.Zero) { var publicUser = new PublicUser().ParseFromJson(serializedPublicUser.ToDict()); onAvatarClickedPtr.Cast <Action <PublicUser> >().Invoke(publicUser); } }
public static void OnActionButtonClick(IntPtr onActionPtr, string serializedAction) { GetSocialDebugLogger.D(string.Format("OnActionClick: [{0}]", serializedAction)); if (onActionPtr != IntPtr.Zero) { var action = GetSocialJsonBridge.FromJson <Action>(serializedAction); onActionPtr.Cast <Action <Action> >().Invoke(action); } }
public void PresentChannelInterface(InviteChannel inviteChannel, InvitePackage invitePackage, Action onComplete, Action onCancel, Action <GetSocialError> onFailure) { GetSocialDebugLogger.D(string.Format("FacebookSharePlugin.PresentChannelInterface(), inviteChannel: {0}, invite package: {1}", inviteChannel, invitePackage)); // GetSocialUi needs to be closed while Facebook activity is opened // because othewise it cannot deliever the result back to the app GetSocialUi.CloseView(true); SendInvite(invitePackage.ReferralDataUrl, onComplete, onCancel, onFailure); }
public static bool OnNotificationClick(IntPtr onNotificationClickedPtr, string serializedNotification) { GetSocialDebugLogger.D(string.Format("OnNotificationClick for notification: {0}", serializedNotification)); if (onNotificationClickedPtr != IntPtr.Zero) { var notification = new Notification().ParseFromJson(serializedNotification.ToDict()); return(onNotificationClickedPtr.Cast <NotificationCenterViewBuilder.NotificationClickListener>().Invoke(notification)); } return(false); }
public static bool OnAction(IntPtr actionListenerPtr, string action) { GetSocialDebugLogger.D(string.Format("OnActionReceived: {0}", action)); if (actionListenerPtr != IntPtr.Zero) { return(actionListenerPtr.Cast <ActionListener>() .Invoke(new GetSocialAction().ParseFromJson(action.ToDict()))); } return(false); }
public static void OnNotificationClick(IntPtr onNotificationClickedPtr, string serializedNotification, string serializedNotificationContext) { GetSocialDebugLogger.D(string.Format("OnNotificationClick for notification: {0}, context: {1}", serializedNotification, serializedNotificationContext)); if (onNotificationClickedPtr != IntPtr.Zero) { var notification = GetSocialJsonBridge.FromJson <Notification>(serializedNotification); GetSocialDebugLogger.D("Notification: " + notification); NotificationContext context = null; if (serializedNotification != null) { context = GetSocialJsonBridge.FromJson <NotificationContext>(serializedNotificationContext); } GetSocialDebugLogger.D("Context: " + context); onNotificationClickedPtr.Cast <NotificationCenterViewBuilder.NotificationClickListener>().Invoke(notification, context); } }
public void PresentChannelInterface(InviteChannel inviteChannel, InvitePackage invitePackage, Action onComplete, Action onCancel, Action <GetSocialError> onFailure) { GetSocialDebugLogger.D(string.Format("FacebookInvitePlugin.PresentChannelInterface(), inviteChannel: {0}, invite package: {1}", inviteChannel, invitePackage)); #if UNITY_ANDROID && USE_GETSOCIAL_UI // Get Social UI needs to be closed while Facebook activity is opened // because othewise it cannot deliever the result back to the app GetSocialUi.CloseView(true); #endif Uri imageUri = null; if (invitePackage.ImageUrl != null) { imageUri = new Uri(invitePackage.ImageUrl); } SendInvite(invitePackage.ReferralDataUrl, imageUri, onComplete, onCancel, onFailure); }
private static bool IsFBAppInstalled() { #if UNITY_ANDROID var unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); var currentActivity = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity"); var packageManager = currentActivity.Call <AndroidJavaObject>("getPackageManager"); try { var arguments = new object[] { "com.facebook.katana", 1 }; packageManager.Call <AndroidJavaObject>("getPackageInfo", arguments); return(true); } catch (Exception exception) { GetSocialDebugLogger.D("Facebook app is not installed, open web view, exception: " + exception.Message); return(false); } #elif UNITY_IOS return(_gs_checkIfFBAppInstalled()); #else return(false); #endif }