我正在尝试从我的应用程序打开一个Facebook应用程序,但我需要它去特定用户的时间轴。我可以在手机浏览器中打开它工作正常,但我无法在Facebook应用程序中打开它...我知道facebook改变了以前的方式,我正在使用facebook-android-sdk:4.6.0
这是我的代码:< / p>
public Intent getOpenFacebookIntent(String userId) {
Log.e(TAG, "pid "+ userId);
try {
getPackageManager().getPackageInfo("com.facebook.katana", 0);
return new Intent(Intent.ACTION_VIEW, Uri.parse("fb://profile/" + userId));
} catch (Exception e) {
return new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.facebook.com/" + userId));
}
}
日Thnx!
答案 0 :(得分:1)
做一点改变
"https://www.facebook.com/profile.php?id=" + userId
试试这个。
此外,仅供您使用用户名而不是userId时,仅供参考:https://www.facebook.com/" + userId
。
答案 1 :(得分:0)
唯一对我有用的代码是:
public Intent getOpenFacebookIntent(String userId) {
Log.e(TAG, "pid "+ userId);
String facebookUrl = "https://www.facebook.com/"+userId;
try {
getPackageManager().getPackageInfo("com.facebook.katana", 0);
return new Intent(Intent.ACTION_VIEW, Uri.parse("fb://facewebmodal/f?href=" + facebookUrl));
} catch (Exception e) {
return new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.facebook.com/app_scoped_user_id/" + userId));
}
}