public async Task<SocialResponse<UserInfo>> SignIn()
        {
            SocialResponse<UserInfo> result = new SocialResponse<UserInfo>();

            try
            {
                var facebookClient = new FacebookSessionClient(APP_ID);
                var session = await facebookClient.LoginAsync();

                if (!string.IsNullOrEmpty(session.AccessToken))
                {
                    result.Result = true;
                    settings.Set(FACEBOOK_TOKEN_SETTING, session.AccessToken);
                    settings.Set(FACEBOOK_TOKEN_EXPIRES_AT_SETTING, session.Expires.ToFileTimeUtc());
                    var userInfo = await GetUserInfo();
                    await GetExtendedToken();
                }
                Debug.WriteLine(session.AccessToken);
                Debug.WriteLine(session.FacebookId);
                Debug.WriteLine(session.Expires);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
                result.Result = false;
            }
            return result;
        }
示例#2
0
        public static async Task<string> LogIn()
        {
            string message = String.Empty;
            try
            {
                FacebookSession session = new FacebookSession();
                FacebookSessionClient client = new FacebookSessionClient(App.fbAppID);
                session = await client.LoginAsync(
                    "user_about_me," +
                    "friends_about_me," +
                    "publish_stream");
                App.isAuthenticated = true;
                App.fbToken = session.AccessToken;
                App.fbUserID = session.FacebookId;

                 FacebookUser user = await Users.DownloadUserInfo(App.fbUserID);

                App.fbProfilePicture = user.Picture.data.url;
                App.fbProfileName = user.Name;
                return "OK";

            }
            catch (InvalidOperationException e)
            {
                message = "Login failed! Exception details: " + e.Message;
                return message;
            }
        }
        private async Task Authenticate()
        {
            ShowProgressBar(true);

            FacebookSession session;
            FacebookSessionClient fbclient = new FacebookSessionClient(FacebookAccount.App_Id);

            try
            {
                FacebookAccount.IsAuthenticated = true;

                session = await fbclient.LoginAsync(FacebookAccount.ExtendedPermissions);

                FacebookAccount.AccessToken = session.AccessToken;
                FacebookAccount.FacebookId = session.FacebookId;

                FacebookAccount.IsConnected = true;

                NavigationService.Navigate(new Uri("/Views/Birthdays.xaml", UriKind.RelativeOrAbsolute));
            }
            catch (InvalidOperationException ioe)
            {
                MessageBox.Show("Login Failed! Exception: " + ioe.Message);
            }
            finally
            {
                ShowProgressBar(false);
            }
        }
        public void init(string args)
        {
            var pr = new PluginResult(PluginResult.Status.OK);
            pr.KeepCallback = true;

            try
            {
                if (string.IsNullOrEmpty(args))
                {
                    DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, "You must supply Facebook Application Key"));
                    return;
                }

                var _args = WPCordovaClassLib.Cordova.JSON.JsonHelper.Deserialize<string[]>(args);
                FacebookSessionClient = new FacebookSessionClient(_args[0]);

                DateTime access_expires;

                Settings.TryGetValue<string>("fb_access_token", out AccessToken);
                Settings.TryGetValue<DateTime>("fb_access_expires", out  access_expires);

                if (AccessToken != null)
                    this.DispatchCommandResult(new PluginResult(PluginResult.Status.OK));
                else
                    DispatchCommandResult(new PluginResult(PluginResult.Status.NO_RESULT));
            }
            catch (Exception ex)
            {
                RemoveLocalData();
                DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, ex.Message));
            }
        }
 private async Task GetFBLoginPage()
 {
     try
     {
         FacebookSessionClient facebookSessionClient = new  FacebookSessionClient("1218463084847397");
         FacebookSession session;
         session = await facebookSessionClient.LoginAsync("user_about_me");
         PurposeColor.App.SaveToken(session.AccessToken);
         PurposeColor.App.SuccessfulLoginAction();
     }
     catch (Exception ex)
     {
         Console.WriteLine("GetFBLoginPage : " + ex.Message);
     }
 }
示例#6
0
        public Game()
        {
            // initialize the graphics device manager and setup the depth stencil buffer format
            graphicsDeviceManager = new GraphicsDeviceManager(this);
            graphicsDeviceManager.PreferredDepthStencilFormat = DepthFormat.Depth24Stencil8;

            Content.RootDirectory = "Content";

            // Setup the world viewport
            WorldViewport = new Viewport(0, 0, defaultWorldWidth, defaultWorldHeight);

            // Handle view state (snap, fill, full) changes
            ApplicationViewChanged += OnApplicationViewChanged;

            FacebookSessionClient = new FacebookSessionClient(FacebookAppId);
        }
示例#7
0
 public static void LogOut()
 {
     FacebookSessionClient client = new FacebookSessionClient(App.fbAppID);
     client.Logout();
     new WebBrowser().ClearCookiesAsync();
 }
示例#8
0
 void setAppID(string app_id)
 {
     FacebookSessionClient = new FacebookSessionClient(app_id);
 }
 /// <summary>
 /// Handles the event for user tapping on the login button
 /// </summary>
 /// <param name="sender">
 /// Sender object
 /// </param>
 /// <param name="e">
 /// Event args
 /// </param>
 private void LoginButtonClick(object sender, RoutedEventArgs e)
 {
     SessionStorage.Remove();
     
     FacebookSessionClient fb = new FacebookSessionClient(AppId);
     fb.LoginWithApp("basic_info,publish_actions,read_stream", "custom_state_string");
 }
示例#10
0
 public static void LogOut()
 {
     FacebookSessionClient client = new FacebookSessionClient(App.fbAppID);
     client.Logout();
 }
示例#11
0
 // Do not add any additional code to this method
 private void facebooksession()
 {
     if (Microsoft.Phone.Net.NetworkInformation.NetworkInterface.NetworkInterfaceType != Microsoft.Phone.Net.NetworkInformation.NetworkInterfaceType.None)
     {
         FacebookSessionClient = new FacebookSessionClient(Constants.FacebookAppId);
     }
 }