如何通过LibGDX And​​roid游戏将分数发布到Facebook?


9

我正在使用LibGDX创建一个Android游戏。我不是在做游戏的HTML后端。我只希望它可以在Android Google Play商店中使用。

可以将分数发布到Facebook吗?如果是这样,我该怎么办?我搜索并找到了仅针对基于网络的游戏的解决方案。


要将乐谱发布到Facebook,您需要网络连接。为什么不编写一个处理数据的小型服务器端程序?在我看来,PHP之类的语言已被Facebook API绑定。另外,如果您不知道,则可以轻松地通过PHP脚本的URL请求传递变量。
guillaume

Answers:


4

Facebook上的API是基于HTTP的,这样你就可以发出HTTP POST请求从游戏到合适的API端点(见“发表一个帖子,”不幸的是没有锚)。有问题的端点是me/feed,因此您将希望构建一个基本上如下所示的请求:

http://graph.facebook.com/me/feed?message="SCORES HERE"&access_token=X

(您必须确保遵循文档中详细说明的身份验证步骤,以获取应该传递的访问令牌,而不是X)。

您应该可以HttpUrlConnection大致使用以下内容(未经测试的sortof-pseudocode):

url = new URL("http://graph.facebook.com/me/feed");
connection = (HttpURLConnection) url.openConnection();

// Indicates POST.
connection.setDoOutput(true);

// Encode parameters.
StringBuffer parameters = new StringBuffer();
parameters.append(URLEncoder.encode("message", "UTF-8"));
parameters.append("=");
parameters.append(URLEncoder.encode("\"Score Data Here\"", "UTF-8"));
parameters.append(URLEncoder.encode("access_token, "UTF-8"));
parameters.append("=");
parameters.append(URLEncoder.encode("Access Token Here", "UTF-8"));

// Transmit data.
writer = new OutputStreamWriter(connection.getOutputStream());
writer.write(parameters.toString());
writer.flush();

0

创建并托管一个PHP Web服务应用程序,该应用程序在被访问时将分数作为HTTP GET参数,执行所需的验证,然后使用Facebook API将其发布到Facebook 。

PHP非常简单。几分钟即可启动并运行。如果使用Windows,请使用[WAMP](http://www.wampserver.com/en/)服务器。

您可能需要通过Facebook中的“应用程序”链接创建Facebook应用程序。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.