我正在尝试使用Unity的解析api创建一个新帐户并遇到各种麻烦。我想做的就是在解析时创建一个帐户。然后成功加载一个场景。
这是用于创建新帐户的代码。
bool success = true;
string error;
try
{
Task signup = user.SignUpAsync().ContinueWith(t =>
{
if (t.IsFaulted || t.IsCanceled)
{
success = false;
}
});
}
catch (System.Exception e)
{
error = "Failed to sign up Parse User. Reason: " + e.Message;
success = false;
}
if(success)
Application.LoadLevel("ExampleScene");
我不会发布我尝试过的所有内容,因为我已经尝试了很多东西。
经常出现的主要问题:
所以它归结为我无法弄清楚如何在不禁用所有Unity功能的情况下等待任务完成。
我应该如何创建一个解析帐户并在完成后收到通知然后再次调用Unity函数?
答案 0 :(得分:1)
对于这种情况,你可以像这样产生你的任务:
private IEnumerator SignUpHandler()
{
bool success = true;
string error;
Task signup = user.SignUpAsync();//.ContinueWith(t =>
while (!signup.IsCompleted) yield return null;
if (signup.IsFaulted || signup.IsCanceled)
{
//Debug.Log("Error " + signup.Exception.Message);
error = "Failed to sign up Parse User. Reason: " + signup.Exception.Message;
success = false;
}
else
{
Debug.Log("Done");
Application.LoadLevel("ExampleScene");
}
}
并从以下某处调用您的SignUpHandler:StartCoroutine("SignUpHandler");