如果在iOS上安装了LinkedIn应用程序,则无法通过LinkedIn API将证书添加到LinkedIn个人资料

时间:2016-05-13 22:13:48

标签: ios swift sdk linkedin linkedin-api

==问题摘要==

问题是从我的iOS应用程序打开一个URL,它将证书添加到用户的LinkedIn个人资料中,重定向到LinkedIn应用程序(如果已安装)。 LinkedIn应用程序似乎无法正确处理此URL(或者我需要不同的URL),因此如果在iOS设备上安装了LinkedIn应用程序,我无法将证书链接到配置文件。

'文档'用于添加证书: https://addtoprofile.linkedin.com/cert

==详情==

使用LinkedIn API我已经成功地使用类似的URL将证书链接到配置文件:

https://www.linkedin.com/profile/add
    ?_ed=<value>
    &pfCertificationName=<name>
    &pfCertificationUrl=<url>
    &source=o
    &pfLicenseNo=<licenseNo>
    &pfCertStartDate=201510
    &trk=<value>

这适用于其他平台,如桌面web和Android就好了。在我们的iOS移动应用程序中,我可以通过app delegate执行此URL:

UIApplication.sharedApplication().openURL(url)

...在移动版Safari中打开网址,并成功提供用户界面,将证书添加到用户的LinkedIn个人资料中(在移动版游记中)。

== LinkedIn App问题==

但是,如果LinkedIn应用程序安装在设备上,则该网址会从移动版Safari重定向到LinkedIn应用程序,并且不会提供用于将证书添加到用户的LinkedIn个人资料的UI。实际上,我带来了LinkedIn应用程序中的一个页面,其中显示“此配置文件不可用&#39;。

我尝试集成LinkedIn SDK以查看是否会有所帮助,但是,它只是将LinkedIn应用程序打开到启动页面,并且不再提供用于链接认证的UI。我已尝试使用网址发布和获取请求。以下是我使用过的一些Swift代码:

let url: NSURL = <url_i_mention_above>

let linkToProfile: Void -> Void = {
    LISDKAPIHelper.sharedInstance().postRequest(
        url.absoluteString,
        stringBody: "",
        success: { (response) in
            logError("LinkedIn Response: \(response.data)")
        },

        error: { (error) in
            logError("LinkedIn Error: \(error)")
    })
}

if !LISDKSessionManager.hasValidSession() {
    LISDKSessionManager.createSessionWithAuth([LISDK_BASIC_PROFILE_PERMISSION], state: "", showGoToAppStoreDialog: true, successBlock: { (returnState) in
        logError("LinkedIn Auth Success: \(returnState)")
        linkToProfile()
        }, errorBlock: { (error) in
            logError("LinkedIn Auth Error: \(error.localizedDescription)")
    })
} else {
    linkToProfile()
}

LinkedIn文档在网页按钮之外的证书添加功能中并不存在。 文档:https://addtoprofile.linkedin.com/cert

此外,LinkedIn并未在StackOverflow之外提供支持: https://developer.linkedin.com/support

这些是我可以使用帮助回答的问题:

  • 是否有人成功将证书添加到LinkedIn个人资料中 iOS通过应用程序?
  • 任何人都可以发现我的网址或请求有任何问题吗?
  • LinkedIn甚至支持通过他们的应用程序向个人资料添加证书吗?

任何帮助都会很棒。我在这里的少量LinkedIn移动SDK文档中找不到答案: https://developer.linkedin.com/docs/ios-sdk

作为参考,这是关于上述代码的身份验证的部分: https://developer.linkedin.com/docs/ios-sdk-auth

0 个答案:

没有答案