当Android应用需要给facebook page导量时,需要将用户导向facebook page页面。
有两种方式打开:一种是通过浏览器打开facebook page的url;另外一种是在facebook客户端打开facebook page。
这里以google的facebook page为例。
第一种方法:
Intent intent =new Intent();
intent.setAction("android.intent.action.VIEW");
String facebookUrl ="https://www.facebook.com/Google/";
intent.setData(Uri.parse(facebookUrl));
context.startActivity(intent);
```
第二种方法:调用facebook客户端
```
Intent intent =new Intent();
intent.setAction("android.intent.action.VIEW");
String facebookUrl =getFacebookPageURL(context);
intent.setData(Uri.parse(facebookUrl));
context.startActivity(intent);
```
```
//获取facebookpage的url
public static String getFacebookPageURL(Context context) {
PackageManager packageManager = context.getPackageManager();
try {
int versionCode = packageManager.getPackageInfo("com.facebook.katana", 0).versionCode;
if (versionCode >= 3002850) { //newer versions of fb app
return "fb://facewebmodal/f?href="+ConstValue.FACEBOOK_PAGE_URL;
} else { //older versions of fb app
String facebookPageId = "xxxxxxx";//从facebook账号中获取facebook page对应的id
return "fb://page/facebookPageId ";
}
} catch (PackageManager.NameNotFoundException e) {
return ConstValue.FACEBOOK_PAGE_URL; //normal web url
}
}
```
效果图如下所示:
![111111.jpg](http://upload-images.jianshu.io/upload_images/6080864-40aa83ec0f0fff66.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)