gpt4 book ai didi

c# - 必须从主线程调用 Facebook GraphRequest.Start() 吗?

转载 作者:行者123 更新时间:2023-11-30 20:40:47 27 4
gpt4 key购买 nike

我正在尝试按照此处提供的入门示例进行操作:https://components.xamarin.com/gettingstarted/facebookios

以下 GraphRequest 在主线程中执行时工作正常:

var request = new GraphRequest ("/me?fields=name", null, AccessToken.CurrentAccessToken.TokenString, null, "GET");
request.Start ((connection, result, error) => {
// Handle if something went wrong with the request
if (error != null) {
new UIAlertView ("Error...", error.Description, null, "Ok", null).Show ();
return;
}

// Get your profile name
var userInfo = result as NSDictionary;
nameLabel.Text = userInfo ["name"].ToString ();
});

但是,当我使用 Task.Run 从后台线程运行完全相同的代码时,似乎永远不会调用 request.Start 中的完成处理程序委托(delegate)。

GraphRequest是否只支持从主线程执行?

最佳答案

您可以使用:

var graphRequest = new GraphRequest ("/me?fields=name,gender", null, AccessToken.CurrentAccessToken.TokenString, null, "GET");
var requestConnection = new GraphRequestConnection();
requestConnection.AddRequest(graphRequest, (connection, result, error) =>
{
var profile = result;
});
requestConnection.Start();

关于c# - 必须从主线程调用 Facebook GraphRequest.Start() 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32922946/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com