如何从我的Android应用程序中打开Linkedin应用程序?

时间:2011-05-23 19:17:45

标签: android android-intent linkedin

我可以从我的Android应用程序轻松打开facebook和twitter个人资料,如下所示:

           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应用程序?有人知道Linkedin的类名吗?

谢谢你们!

4 个答案:

答案 0 :(得分:14)

LinkedIn应用程序可以使用Intents打开,但API记录不是很好(根本没有?)。 工作URI是:

  • LinkedIn://你
  • linkedin://个人资料/ [个人资料ID]
  • linkedin:// group / [group id]

所以你可以使用:

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);

我尝试使用意图打开公司资料,但有一段时间没有结果。 要获取配置文件ID,只需访问配置文件页面并检查URL。 要获取公司ID,请转到https://developer.linkedin.com/apply-getting-started#company-lookup

答案 1 :(得分:0)

在com.linked.android.profile.ViewProfileActivity类上尝试putStringExtra(“memberId”,the_id

答案 2 :(得分:0)

Wieux回答这个问题几乎是正确的解决方案,他只有一个错字导致他的解决方案无法正常工作。由于某种原因,有人删除了Wieux的答案,以及我的更正。因此,我正在再次编写解决方案。

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

就是这样,这个解决方案并不完整,因为它只适用于人而不适用于公司,我仍然不了解所有不同形式的网址。只有当你有numberI形式的memberId时,这个解决方案才有效,你应该把String放在那里,而不是memebr id。

希望它有所帮助。

答案 3 :(得分:0)

仅对公司使用此功能,Android会自动建议在LinkedIn应用程序中打开:

    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.linkedin.com/company/your_company_id/")));

它在Android 10上为我工作