Search code examples
facebookfacebook-graph-apiwindows-phone-8facebook-login

Can't login with facebook in Windows Phone App


It was working fine before but It's not working even though I haven't changed anything in my Facebook related code. It is giving this error:

App doesn't give permission to given URL : The settings of app doesn't allow one or more of the given URL's. URLs must be Website's URL or Canvas URL...

Here is my FacebookLoginPage.cs:

namespace MyApp.Pages
{
    public partial class FacebookLoginPage : PhoneApplicationPage
    {

        private string message;
        public FacebookLoginPage()
        {


            InitializeComponent();
            message = String.Empty;
            this.Loaded += FacebookLoginPage_Loaded;

        }


        protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e)
        {

            NavigationService.GoBack();
            base.OnBackKeyPress(e);
        }

        private async void FacebookLoginPage_Loaded(object sender, RoutedEventArgs e)
        {
            if (String.IsNullOrEmpty(App.AccessToken))
            {
                App.isAuthenticated = true;
                await Authenticate();



            }
        }



        private FacebookSession session;
        private async Task Authenticate()
        {
            //Facebook logini kontroli eğer login olduysa AccessToken ve bilgileri çeker.
            try
            {
                if (App.FacebookSessionClient.LoginInProgress == true && !String.IsNullOrEmpty(message))
                {
                    App.FacebookSessionClient.LoginInProgress = false;

                }

                else
                {
                    session = await App.FacebookSessionClient.LoginAsync("user_about_me,read_stream");
                    App.AccessToken = session.AccessToken;
                    App.appSettings["accessToken"] = App.AccessToken;
                    App.appSettings.Save();
                    App.FacebookId = session.FacebookId;
                    Dispatcher.BeginInvoke(() => NavigationService.Navigate(new Uri("/Pages/MainPage.xaml?token=" + App.AccessToken, UriKind.Relative)));
                }
            }
            catch (InvalidOperationException)
            {
                message = "failed";
                App.FacebookSessionClient.LoginInProgress = true;
                NavigationService.GoBack();

            } 
        }
    }
}

What might be the probelm?


Solution

  • When I added facebook.com to Oauth part of Advanced Setting in my Facebook App, the problem solved. Thanks to the following link: Windows Phone 8 Facebook Login Given URL is not allowed by the application