public static async Task GetInfo(Action <JObject> onCompleted) { IsLoginCall = false; var accessToken = await RefreshAccessToken(); var param = NSDictionary.FromObjectAndKey(CurrentParameters.ToString(",").ToNs(), "fields".ToNs()); var request = new SDK.CoreKit.GraphRequest("me", param, accessToken.TokenString, null, "GET"); request.Start(new SDK.CoreKit.GraphRequestBlockHandler(GraphCallback)); UserInfoFetched.ClearHandlers(); UserInfoFetched.Handle(onCompleted); }
static async void RequestTokenHandler(SDK.LoginKit.LoginManagerLoginResult result, NSError error) { if (error != null) { Log.For(typeof(Facebook)).Error("An error occurred in Facebook :[" + error + "]"); await OnError.Raise(error.ToString()); } else if (result?.IsCancelled ?? true) { await OnCancel.Raise(); } else { try { var er = result.ToString(); var accessToken = result.Token; if (accessToken.IsExpired) { accessToken = await RefreshAccessToken(); } CurrentAccessToken = new AccessToken { TokenString = accessToken.TokenString, AppId = accessToken.AppId, UserId = accessToken.UserId }; var param = NSDictionary.FromObjectAndKey(CurrentParameters.ToString(",").ToNs(), "fields".ToNs()); var request = new SDK.CoreKit.GraphRequest("me", param, accessToken.TokenString, null, "GET"); request.Start(new SDK.CoreKit.GraphRequestBlockHandler(GraphCallback)); } catch (Exception e) { Log.For(typeof(Facebook)).Error(e); throw; } } }