iOS Facebook URL方案无法在Facebook应用中打开页面

时间:2018-10-05 10:21:15

标签: ios swift facebook fbsdk swift4.1

我需要在Facebook应用程序中打开Facebook页面。

这是我的代码

mEdittext.setFilters(new InputFilter[]{
            new AlphabetInputFilter()});

它在Safari浏览器中完美运行,但在Facebook应用程序中则无法运行。

我已在 let url : URL! if (UIApplication.shared.canOpenURL(URL(string:"fb://")!)) { //FIXME: Url is not working ✋ let pageName = "google" // tried with fb://page?name=%@ not worked let urlString = String.init(format: "fb://page?id=%@",pageName!) url = URL.init(string: urlString) } else { url = URL.init(string: "https://www.facebook.com/google") } if #available(iOS 10.0, *) { UIApplication.shared.open(url!, completionHandler: nil) } else { UIApplication.shared.openURL(url!) }

中添加了url方案。
inof.plist

有人可以帮我解决这个问题吗?

在此先感谢!!!

2 个答案:

答案 0 :(得分:0)

尝试此代码,请确保使用页面上的Facebook ID而不是页面名称

选中此How to find page Id

 let url : URL!
        if (UIApplication.shared.canOpenURL(URL(string:"fb://")!)) {
            //FIXME: Url is not working ✋
            let pageName = "104958162837"
            // tried with fb://page?name=%@ not worked
            let urlString =  String.init(format: "fb://profile/%@",pageName) 
            url = URL.init(string: urlString)
        } else {
            url = URL.init(string: "https://www.facebook.com/104958162837")
        }

        if #available(iOS 10.0, *) {
            UIApplication.shared.open(url!, completionHandler: nil)
        } else {
            UIApplication.shared.openURL(url!)
        }

答案 1 :(得分:0)

调用UIApplication.shared.openURL(:)时它是否会在浏览器中打开?

我不完全完全理解您的问题,但是如果我没记错的话,您必须输入 Facebook应用ID (这是出现的第一件事在您的应用中developers.facebook的“ URL类型”中。

此图片应阐明我想说的话:

enter image description here

应用ID 之前,请不要忘记"fb" String


编辑:既然我已经理解了您的问题,则不确定您将能够解决此问题-您可以看到所有{{ 3}}-,它们似乎不再起作用,因为URL方案已更改了两次,而您所使用的实际上是最后一个“已回答/已使用”的网址引用的答案。 我可以几乎确认由于this answers,没有受支持的方法来执行您要尝试的操作。