首先,这是与我的特定帮助请求有关的原始问题线程的链接: Facebook AppRequest handle on unity3d game
不阅读以上内容,这是没有意义的。因此,请在您投票认为它不清楚、不相关或其他任何内容之前,请查看上面的链接,阅读它......然后,如果可以的话,然后发表评论。如果你不能,那么请忽略它。我真的很想得到我的问题的答案,但是回来发现它不可见是非常令人沮丧的,因为有人想对它投反对票。这是我在这里的第一个问题,我现在已经尝试了 5 次,只是为了让它看到超过 5 分钟。
我的原始评论:@Aaron,感谢您将回复发布到上述链接,因为我发现它试图弄清楚如何做 Nick Mascarenhas 也试图弄清楚的事情。我(作为一名 Unity 开发人员)还希望看到一个 GetRequests 类型函数,它返回一个来自 UserID 的数组和发送给登录用户的请求代码。我对 Facebook 的做事方式相当陌生(尽管我有一个非常强大的编程背景),我发现这非常......试图让 Facebook 集成失败。(那个,示例统一项目无法统一编译,但我最近了解了原因......并且没有像其他 SDK 一样的已完成项目......再次,非常令人沮丧,因为我想能够弄清楚这一点,然后回到构建我的游戏。)至于亚伦'
您可以通过调用 FB.API 从 appid 获取“数据”:
调用 FB.AppRequest(...,data="life") => request id = 1234 之后,玩家使用请求 id 1234 访问您的游戏,您调用 FB.API("/1234") :生成的 JSON 字符串将有一个字段 data="life"
主要问题是我没有完全了解如何在统一的 C-Sharp 框架内将特定的 AppRequests 发送给一个人。
例如,我希望能够在我的游戏中向其他玩家发送一个名为“加速”的道具,然后提取发送的请求(当用户登录时)并知道有多少/来自谁/等等他们收到了。我正在使用下面的 SendPowerUp 功能。
这是使用的代码,它大部分是从 FBUtil.cs 文件中复制出来的,并稍作修改以与 6.0beta sdk 一起使用...
public void SendPowerUp()
{
DirectRequestTitle = "Send a Mystery Gift to a friend.";
FriendFilters.Add ("all");
FriendFilters.Add ("app_users");
FriendFilters.Add ("app_non_users");
// sends a gift request to players...
FB.AppRequest (
message: DirectRequestMessage,
actionType: OGActionType.Send,
objectId: "gift" + FB.UserId,
filters: FriendFilters,
excludeIds: null,
maxRecipients: 49,
data: FriendSelectorData,
title: DirectRequestTitle,
callback: (Facebook.FacebookDelegate)AppRequestAsDirectRequestComplete);
}
这是修改后的版本:
public void CallAppRequestAsDirectRequest()
{
if (DirectRequestTo == "")
{
throw new ArgumentException("\"To Comma Ids\" must be specificed", "to");
}
FB.AppRequest(
message: DirectRequestMessage,
to: DirectRequestTo.Split(','),
title: DirectRequestTitle,
callback: AppRequestAsDirectRequestComplete
);
}
因为Unity在导入脚本的时候会出现这个错误,如果缺少参数:
资产/脚本/CSharp/FB_Controller.cs(287,12):错误 CS1501:方法
AppRequest' takes
4' 参数没有重载
任何关于如何获取我的应用程序在玩家玩我的游戏时发送给他们的请求的任何解释(来自 FACEBOOK)将不胜感激。