Как я могу открыть приложение Linkedin из моего приложения для Android? - PullRequest
5 голосов
/ 23 мая 2011

Я легко открываю профиль в Facebook и Twitter из моего приложения для Android, например:

           if (facebookId != null)
                    {
                        try
                        {
                            long longFacebookid = Long.parseLong(facebookId);

                            Intent intent = new Intent(Intent.ACTION_VIEW);
                            intent.setClassName("com.facebook.katana", "com.facebook.katana.ProfileTabHostActivity");
                            intent.putExtra("extra_user_id", longFacebookid);

                            startActivity(intent);

                            return;
                        }
                        catch (ActivityNotFoundException e)
                        {                       
                            e.printStackTrace();
                        }
                        catch (NumberFormatException e)
                        {   
                            e.printStackTrace();
                        }   
                    }

Но я не знаю, как открыть приложение для мыши?Кто-нибудь знает имя класса Linkedin?

Спасибо, ребята!

Ответы [ 3 ]

14 голосов
/ 27 мая 2014

Приложение LinkedIn может быть открыто с использованием Intents, но API не очень хорошо (вообще?) Задокументировано.Рабочие URI:

  • linkedin: // вы
  • linkedin: // профиль / [идентификатор профиля]
  • linkedin: // группа / [идентификатор группы]

Таким образом, вы можете использовать:

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("linkedin://you"));
final PackageManager packageManager = getContext().getPackageManager();
final List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
if (list.isEmpty()) {
    intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.linkedin.com/profile/view?id=you"));
}
startActivity(intent);

Я пытаюсь открыть профиль компании, используя намерения, но уже безрезультатно.Чтобы получить идентификатор профиля, просто зайдите на страницу профиля и проверьте URL.Чтобы получить идентификатор компании, перейдите на https://developer.linkedin.com/apply-getting-started#company-lookup.

1 голос
/ 01 ноября 2011

Вье ответил на этот вопрос почти как правильное решение, у него была только опечатка, из-за которой его решение не работало.По какой-то причине кто-то удалил ответ Вье и мое исправление.Поэтому я снова пишу решение.

Intent linkedinIntent = new Intent(Intent.ACTION_VIEW);
linkedinIntent.setClassName("com.linkedin.android", "com.linkedin.android.profile.ViewProfileActivity");
linkedinIntent.putExtra("memberId", <member id>);
startActivity(linkedinIntent);

То есть, это решение не является полным, так как оно работает только для людей, а не для компаний, я также до сих пор не понимаю всех различных формURL для linkedin.Это решение будет работать, только если у вас есть memberId в виде числа, вы должны указать String, а не как memebr id.

Надеюсь, это поможет.

0 голосов
/ 24 мая 2011

Попробуйте putStringExtra ("memberId", the_id) для класса com.linked.android.profile.ViewProfileActivity

...