Мой ответ основан на общепринятом ответе от joaomgcd.Если у пользователя установлен Facebook, но он отключен (например, с помощью карантина приложения), этот метод не будет работать.Будет выбрано намерение для приложения Twitter, но оно не сможет обработать его, поскольку оно отключено.
Вместо:
context.getPackageManager().getPackageInfo("com.facebook.katana", 0);
return new Intent(Intent.ACTION_VIEW, Uri.parse("fb://profile/620681997952698"));
Вы можете использовать следующее, чтобы решить, чтоделать:
PackageInfo info = context.getPackageManager().getPackageInfo("com.facebook.katana", 0);
if(info.applicationInfo.enabled)
return new Intent(Intent.ACTION_VIEW, Uri.parse("fb://profile/620681997952698"));
else
return new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.facebook.com/620681997952698"));