0

我在互联网上找了一段时间,但还没有找到解决方案。

所以我的问题是:是否可以通过单击我自己的 android 应用程序中的列表项在 facebook 应用程序中打开一个 facebook 页面“x”?

因为现在我在 webview 中链接到我的应用程序中的 fb 页面“x”,最好打开 fb 应用程序并直接转到页面“x”。

编辑我找到了一个解决方案,但它还没有完全工作。它现在打开了 facebook 应用程序,但由于我要显示的页面不是个人资料,而是一个页面,它在 facebook 应用程序中给出了错误。这是代码:

   public static Intent getOpenFacebookIntent(Context context) {

       try {
        context.getPackageManager().getPackageInfo("com.facebook.katana", 0);
        return new Intent(Intent.ACTION_VIEW, Uri.parse("fb://page/androiddevs"));
       } catch (Exception e) {
        return new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.facebook.com/androiddevs"));
       }
    }

这不起作用。如果我将第一个 URI 解析编辑为

Uri.parse("fb://profile/myprofileid")

然后我可以在应用程序中打开我的个人资料。但是我要显示的页面不是我自己的页面。我可以向他们询问信息,如果需要的话,因为我认识这些人。

但也许有人有一些想法让它发挥作用。

4

1 回答 1

6

好的,所以我最终解决了它。

这是工作代码:

public static Intent getOpenFacebookIntent(Context context) {

       try {
        context.getPackageManager().getPackageInfo("com.facebook.katana", 0);
        return new Intent(Intent.ACTION_VIEW, Uri.parse("fb://page/5676133521"));
       } catch (Exception e) {
        return new Intent(Intent.ACTION_VIEW, Uri.parse("https://touch.facebook.com/androiddevs"));
       }
    }
}

要获取页面的 ID,您只需在浏览器中转到 facebook 中的页面,然后将“www”替换为“graph”。您将看到的第一行将是页面的 ID。

希望这可以帮助有同样问题的人!

于 2013-05-29T16:28:25.503 回答