如何使用Android应用程序打开Facebook App?

时间:2016-04-26 17:23:42

标签: java android facebook android-studio

我正在尝试使用Android应用程序打开Facebook App或Facebook的页面,但我无法做到。它没有做任何事情。

以下是代码:

public Intent getOpenFacebookIntent(Context context){

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

@Override
public void onClick (View v){
    switch (v.getId()) {
        case R.id.guardar:
          startActivity(new Intent(this, getOpenFacebookIntent(this)));
        break;

有人能帮助我吗?

2 个答案:

答案 0 :(得分:0)

包名称应为此。

details?id=com.facebook.katana

Chage this。

context.getPackageManager().getPackageInfo("com.facebook.FacebookSdk", 0);

对此。

context.getPackageManager().getPackageInfo("com.facebook.katana", 0);

<强> EDIT1:

Intent facebookIntent = new Intent(Intent.ACTION_VIEW);
String facebookUrl = getOpenFacebookIntent(this);
facebookIntent.setData(Uri.parse(facebookUrl));
startActivity(facebookIntent);

答案 1 :(得分:0)

在onClick()方法中调用launchFacebook();

public void launchFacebook() {
    String urlFb = "fb://page/"+ID;
    // replace ID with your id 
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setData(Uri.parse(urlFb));

    PackageManager packageManager = getPackageManager();
    List<ResolveInfo> list = packageManager.queryIntentActivities(intent,
                    PackageManager.MATCH_DEFAULT_ONLY);
    if (list.size() == 0) {
        final String urlBrowser = "https://www.facebook.com/"+my_page; 
        // relpace my_page with facebook profile page ending
        intent.setData(Uri.parse(urlBrowser));
    }
    startActivity(intent);
}