如何从UID获取Facebook虚荣URL?

时间:2017-08-23 23:26:59

标签: android facebook firebase

我目前正在处理一些代码,这些代码可以让我打开Facebook应用程序到正确的个人资料,但我想知道,对于没有安装facebook应用程序的用户,我该如何创建可用的链接使用我的catch块中的代码使用存储在Firebase中的UID到特定的配置文件页面?

我使用这种方法:

    public static Intent getOpenFacebookIntent(Context context, String uid) {

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

谢谢!

-T

2 个答案:

答案 0 :(得分:1)

return new Intent(Intent.ACTION_VIEW,
            Uri.parse("https://www.facebook.com/profile.php?id="+ uid));

答案 1 :(得分:1)

/profile.php?id="+ uid仅适用于全球用户ID。

由于您的应用只获取应用范围的用户ID,因此您需要使用表单

https://www.facebook.com/app_scoped_user_id/{app-scoped id here}/

这也是用户对象的link字段返回的内容。