我正在开发材料设计应用。
当用户点击Facebook上的' '时,我想打开我的应用的Facebook页面我的应用中的文字(布局)。
我设法打开 Facebook应用,但我无法弄清楚如何直接打开我的页面!
这是我到目前为止所做的事情:
LinearLayout linearLayoutFacebookContainer = (LinearLayout) findViewById(R.id.facebook_container);
linearLayoutFacebookContainer.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
final Handler handler3 = new Handler();
handler3.postDelayed(new Runnable() {
@Override
public void run() {
Intent facebookIntent = getPackageManager().getLaunchIntentForPackage("com.facebook.katana");
if (facebookIntent != null) {
// We found the activity now start the activity
facebookIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
facebookIntent.setData(Uri.parse("https://www.facebook.com/HumaneHelper/"));
startActivity(facebookIntent);
} else {
// Bring user to the market or let them choose an app?
facebookIntent = new Intent(Intent.ACTION_VIEW);
facebookIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
facebookIntent.setData(Uri.parse("https://www.facebook.com/HumaneHelper/"));
startActivity(facebookIntent);
}
}
}, 200);
}
});
请告诉我。
我是初学者,请合作。
提前致谢。
答案 0 :(得分:0)
fb:// page / {id} 是要走的路:
final String url = "fb://page/" + facebookID
Intent facebookAppIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
facebookAppIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
startActivity(facebookAppIntent);
您确定使用的是Facebook页面的 ID号,而不是用户名吗?
我的意思是,例如,如果你想打开Facebook本身的Facebook页面(即https://www.facebook.com/facebook),你必须使用:
fb://page/20531316728
由于 20531316728 是Facebook页面的 ID (而 facebook 是用户名)。
如果您不知道Facebook页面的ID,可以打开它:
https://graph.facebook.com/{username}