public override void Logout() { FacebookWP8.Logout(); userId = ""; accessToken = ""; isLoggedIn = false; }
private IEnumerator LoginComplete() { accessToken = FacebookWP8.AccessToken; string url = "https://graph.facebook.com/me?method=get&access_token=" + accessToken; WWW www = new WWW(url); yield return(www); if (www.error != null) { Debug.LogError("www.error"); Logout(); } else if (www.text.Contains("first_name")) { //If Data comes back then get User ID and Save it. Also be sure to save AccessToken var dict = Facebook.MiniJSON.Json.Deserialize(www.text) as Dictionary <string, object>; FacebookWP8.UserID = (string)dict["id"]; userId = FacebookWP8.UserID; FacebookWP8.SaveUserIDToken(); FacebookWP8.SaveAccessToken(); } else { //Token is not valid. Delete session. Set to not logged in; Logout(); } isLoggedIn = FacebookWP8.IsLoggedIn; if (cb != null) { cb(new FBResult((isLoggedIn) ? "Login sucessful" : "Login failed", null)); } }
public override void Login(string scope = "", FacebookDelegate callback = null) { if (FacebookWP8.IsLoggedIn) { //If logged in then do nothing. return; } else if (!FacebookWP8.IsLoggedIn && FacebookWP8.AccessToken.Length > 0) { //if AccessToken is only avaiable then Complete login (get UserID) StartCoroutine(LoginComplete()); } else { FacebookWP8.Login(scope); StartCoroutine(CheckLoginLoop()); //Start LoginCheck for login complete. } cb = callback; }
public override void Init( InitDelegate onInitComplete, string appId, bool cookie = false, bool logging = true, bool status = true, bool xfbml = false, string channelUrl = "", string authResponse = null, bool frictionlessRequests = false, Facebook.HideUnityDelegate hideUnityDelegate = null) { //Init Facebook. This will load in UserID and AccessToken if made a previous login. FacebookWP8.Init(appId); if (FacebookWP8.IsLoggedIn) { //If Logged in (UserID and Token was saved and valid then set login = true //Dll checks if the token if valid. isLoggedIn = FacebookWP8.IsLoggedIn; //Only true if token and User are not blank. accessToken = FacebookWP8.AccessToken; userId = FacebookWP8.UserID; } else if (FacebookWP8.AccessToken.Length > 0) { //If Only access token is there, because login with DLL only produces the Acess Token, //Then Complete Login isLoggedIn = false; accessToken = FacebookWP8.AccessToken; StartCoroutine(LoginComplete()); } else { //If AccessToken and User are blank in FacebookWP8 class then login if false. isLoggedIn = false; } if (onInitComplete != null) { onInitComplete(); } }