我正在尝试使用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;
有人能帮助我吗?
答案 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);
}