public void CompleteLogin(Action <bool> callback) { OAuthWebQuery accessTokenQuery = this.GetAccessTokenQuery(); EventHandler <WebQueryResponseEventArgs> eventHandler = (EventHandler <WebQueryResponseEventArgs>)((sender, e) => { try { Dictionary <string, string> queryParameters = TwitterFriendsImportProvider.GetQueryParameters(new StreamReader(e.Response).ReadToEnd()); this._userId = queryParameters["user_id"]; this._accessToken = queryParameters["oauth_token"]; this._accessTokenSecret = queryParameters["oauth_token_secret"]; this._twitterClient = new TwitterClient("f5dowbYEtg4PfEOQZEdnHoHdT", "cCosLgG0c7IeJL7qElkR9tMCMWPjDdMPDHGMY2QlOoHCbza09b", new AccessToken(this._accessToken, this._accessTokenSecret)); callback(true); } catch (Exception) { callback(false); } }); accessTokenQuery.QueryResponse += eventHandler; string url = "https://api.twitter.com/oauth/access_token"; // ISSUE: variable of the null type accessTokenQuery.RequestAsync(url, null); }
private void Browser_Navigating(object sender, NavigatingEventArgs e) { string uri = e.Uri.AbsoluteUri.ToString(); if (socialNetwork == HikeConstants.TWITTER && uri.Contains(Social.TwitterSettings.OAuthTokenKey) && uri.Contains(Social.TwitterSettings.OAuthVerifierKey)) { try { Dictionary <string, string> authorizeResult = GetQueryParameters(e.Uri.ToString()); string verifyPin = authorizeResult["oauth_verifier"]; string oAuthTokenKey = authorizeResult["oauth_token"]; OAuthWebQuery accessTokenQuery = OAuthUtil.GetAccessTokenQuery(oAuthTokenKey, tokenSecret, verifyPin); accessTokenQuery.QueryResponse += new EventHandler <WebQueryResponseEventArgs>(AccessTokenQuery_QueryResponse); accessTokenQuery.RequestAsync(Social.TwitterSettings.AccessTokenUri, null); } catch (Exception ex) { Debug.WriteLine("SocialPages::Browser_Navigating:TwitterAuth , Exception:" + ex.StackTrace); } } else if (uri.Contains("get.hike.in") && uri.Contains("windowsphone") || uri.Contains("zune")) { e.Cancel = true; Dispatcher.BeginInvoke(() => { if (uri.Contains("denied") && NavigationService.CanGoBack) { if (NavigationService.CanGoBack) { NavigationService.GoBack(); } } }); } else if (uri.Contains("invite") && (uri.Contains("Hike.in") || uri.Contains("hike.in"))) { e.Cancel = true; Dispatcher.BeginInvoke(() => { Uri nextPage = new Uri("/View/InviteUsers.xaml", UriKind.Relative); try { NavigationService.Navigate(nextPage); } catch (Exception ex) { Debug.WriteLine("SocialPages SCREEN :: Exception while navigating to Invite screen : " + ex.StackTrace); } }); } }
public void Login() { OAuthWebQuery requestTokenQuery = TwitterFriendsImportProvider.GetRequestTokenQuery(); EventHandler <WebQueryResponseEventArgs> eventHandler = (async(sender, args) => { try { this._oauthToken = TwitterFriendsImportProvider.GetQueryParameters(new StreamReader(args.Response).ReadToEnd())["oauth_token"]; await Launcher.LaunchUriAsync(new Uri(string.Format("{0}?oauth_token={1}", "https://api.twitter.com/oauth/authorize", this._oauthToken))); } catch { } }); requestTokenQuery.QueryResponse += eventHandler; requestTokenQuery.RequestAsync("https://api.twitter.com/oauth/request_token", null); }