我能够解决这个解决方案的问题
解析我在appRequestCallback上获得Facebook的数据时遇到问题。
请求已发送且该部分正常。但我需要解析内部使用的发送数据。
代码就是这个
private void appRequestCallback(FBResult result)
{
Util.Log("appRequestCallback");
if (result != null)
{
var responseObject = Json.Deserialize(result.Text) as Dictionary<string, object>;
object obj = 0;
string resp = (string)responseObject["request"];
Util.Log ("resp : " + resp);
if (responseObject.TryGetValue("cancelled", out obj))
{
Util.Log("Request cancelled");
}
else if (responseObject.TryGetValue("request", out obj))
{
responseObject.TryGetValue("to", out obj);
string[] s = (string[]) obj;
Util.Log ("s: " + s);
AddPopupMessage("Request Sent", ChallengeDisplayTime);
Util.Log("Request sent");
}
}
}
在控制台中我得到了这个
appRequestCallback
UnityEngine.Debug:日志(对象)
resp:870884436303337
UnityEngine.Debug:日志(对象)
然后是错误
InvalidCastException:无法从源类型转换为目标类型。 MainMenu.appRequestCallback(.FBResult结果)(在Assets / Resources / Scripts / MainMenu.cs:482) Facebook.AsyncRequestDialogPost.CallbackWithErrorHandling(.FBResult结果) Facebook.AsyncRequestString + c__Iterator0.MoveNext()
问题在于解析:json文件的一部分,我不知道为什么。我试图将其转换为字符串,字符串[],列表&lt;&gt;,数组,ArrayList。正如我所看到的问题是我没有使用良好的演员类型来:但我无法弄清楚正确的演员类型是什么