我正在使用Unity 4.5,最新的facebook sdk 6.0,我现在正在使用android,但它也适用于iOS。 我试图截取屏幕截图并将其上传到我的墙上,因此我使用facebook sdk中的标准示例场景。 当我使用我的私人帐户作为测试帐户时,一切正常,并且它也适用于较旧项目的facebook app ID(至少1岁)。但是使用普通帐户(没有测试人员)和新的Facebook应用程序,它无法正常工作。
我是否必须完整提交以使用"将图像发布到用户墙"功能还是我做错了什么? 我的Facebook应用程序说"这个应用程序是公开的,可供所有用户使用" 。所以我想它应该可行吗?
我用它来登录:
private void CallFBLogin()
{
FB.Login("email, publish_actions", LoginCallback);
}
void LoginCallback(FBResult result)
{
if (result.Error != null)
lastResponse = "Error Response:\n" + result.Error;
else if (!FB.IsLoggedIn)
{
lastResponse = "Login cancelled by Player";
}
else
{
lastResponse = "Login was successful!";
}
}
这是截图方法:
private IEnumerator TakeScreenshot()
{
yield return new WaitForEndOfFrame();
var width = Screen.width;
var height = Screen.height;
var tex = new Texture2D(width, height, TextureFormat.RGB24, false);
// Read screen contents into the texture
tex.ReadPixels(new Rect(0, 0, width, height), 0, 0);
tex.Apply();
byte[] screenshot = tex.EncodeToPNG();
textureTest = tex;
var wwwForm = new WWWForm();
wwwForm.AddBinaryData("image", screenshot, "InteractiveConsole.png");
wwwForm.AddField("message", "herp derp. I did a thing! Did I do this right?");
FB.API("me/photos", Facebook.HttpMethod.POST, Callback, wwwForm);
}
希望有人有解决方案。
谢谢!
答案 0 :(得分:2)
根据docs。如果您需要publish_actions
权限,则需要提交您的应用以供审核。
审核
如果您的应用请求Facebook必须拥有此权限 查看您的应用如何使用它。
通过App Review申请此权限时,请确保您的 我们的团队可以轻松重现说明。