我在一个示例项目中使用基本的FB.SharLink和FB.FeedShare实现了Facebook Sharing对话框。现在,当我为Live项目创建一个新的Facebook应用程序并将其集成到My Live Unity项目中时,它已按设计停止工作。
步骤:创建Facebook应用程序,在其中添加Android产品。禁用了开发模式以及有关应用程序信息的所有其他必要的基本设置,例如命名空间,应用程序域和网站。
问题:当我去Facebook时,它会清除我的C#代码所写的标题和描述,并从网站链接获得一些标题和描述,如果它没有从网站找到任何内容,它将网站URL文本设置为内容标题和内容说明。
调整:现在,当我将App Id和App Name从Sample项目应用到Live项目并更改Bundle Identifier Name并将其设置为示例项目的包标识符名称,然后当我构建我的实时项目并测试它并且它实际上有效。现在我很惊讶这是怎么发生的?
我提供相同的链接,例如www.google.com。它正在Old Sample Project中使用它的Facebook应用程序,但它不适用于实时项目和新的Facebook应用程序。
然后我去了developers.facebook.com并检查了两个Facebook应用程序的所有设置。但所有设置都相同。除了Facebook Application Id,Name&密钥。
请帮我解决这个问题。
答案 0 :(得分:0)
在facebook-unity-sdk-7.9.0和Unity 5.6.0f3(64位)上测试过。 我在下面创建了一个示例代码。我测试了这个它的工作原理。 它使用Facebook SDK ...你只需要将ShareScreenShot链接到一个按钮。
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using Facebook.Unity;
using Facebook.Unity.Example;
using UnityEngine.UI;
public class FBShareScreenShotTest : MonoBehaviour {
public void ShareScreenShot(){
Debug.Log ("SHARE");
//ShareScoreOnFB();
FB.ShareLink(
new Uri("URL where you want to redirect the user"),
"Rebisco",
"Lets have a great adventure.",
new Uri("Image here URL "),
callback: ShareCallback);
}
private void ShareCallback (IShareResult result) {
if (result.Cancelled || !String.IsNullOrEmpty(result.Error)) {
Debug.Log("ShareLink Error: "+result.Error);
} else if (!String.IsNullOrEmpty(result.PostId)) {
// Print post identifier of the shared content
Debug.Log(result.PostId);
} else {
// Share succeeded without postID
Debug.Log("ShareLink success!");
}
}
}
您可以在此处查看源代码:https://github.com/casterfile/Unity-Facebook-Soscial-Share
答案 1 :(得分:0)
我已经解决了我的问题。所有这些都是Android构建哈希密钥。我生成新的Hash Key,必须在Facebook应用程序上进行设置。并重建程序,它工作。