{"id":21206365,"url":"https://github.com/joonhocho/react-native-linkedin-sdk","last_synced_at":"2025-06-25T17:09:29.037Z","repository":{"id":57338097,"uuid":"79921197","full_name":"joonhocho/react-native-linkedin-sdk","owner":"joonhocho","description":"React Native Wrapper for Latest LinkedIn Mobile SDK for Sign-In / Auth and API Access.","archived":false,"fork":false,"pushed_at":"2018-03-15T16:11:48.000Z","size":1047,"stargazers_count":41,"open_issues_count":18,"forks_count":15,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-05-22T20:25:46.924Z","etag":null,"topics":["android","ios","linkedin","linkedin-api","linkedin-login","linkedin-sdk","linkedin-signin","oauth2","react-native"],"latest_commit_sha":null,"homepage":null,"language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joonhocho.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-24T14:55:29.000Z","updated_at":"2024-11-15T02:10:55.000Z","dependencies_parsed_at":"2022-09-11T13:31:06.310Z","dependency_job_id":null,"html_url":"https://github.com/joonhocho/react-native-linkedin-sdk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/joonhocho/react-native-linkedin-sdk","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joonhocho%2Freact-native-linkedin-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joonhocho%2Freact-native-linkedin-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joonhocho%2Freact-native-linkedin-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joonhocho%2Freact-native-linkedin-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joonhocho","download_url":"https://codeload.github.com/joonhocho/react-native-linkedin-sdk/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joonhocho%2Freact-native-linkedin-sdk/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261701117,"owners_count":23196518,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","ios","linkedin","linkedin-api","linkedin-login","linkedin-sdk","linkedin-signin","oauth2","react-native"],"created_at":"2024-11-20T20:55:30.295Z","updated_at":"2025-06-25T17:09:29.014Z","avatar_url":"https://github.com/joonhocho.png","language":"Objective-C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# React Native Wrapper for Latest LinkedIn Mobile SDK for Sign-In / Auth and API Access.\n\nReact Native wrapper for the latest [LinkedIn SDK](https://developer.linkedin.com/docs/android-sdk).\n\nFor iOS, this library bridges [tonyli508/LinkedinSwift](https://github.com/tonyli508/LinkedinSwift).\n\nFor Google Sign-In SDK, check out [joonhocho/react-native-google-sign-in](https://github.com/joonhocho/react-native-google-sign-in).\n\n## Getting started\n\nSee [Tested Environments](#tested-environments).\n\n`$ react-native install react-native-linkedin-sdk`\n\n\n## Android\nDownload the latest release of [LinkedIn's Mobile SDK for Android](https://developer.linkedin.com/downloads#androidsdk).\n\nMove `li-android-sdk/linkedin-sdk` to `{YourApp}/android/linkedin-sdk`.\n\n\nFollow instructions from [Official Guide](https://developer.linkedin.com/docs/android-sdk) to:\n - [Create an application on LinkedIn](https://www.linkedin.com/secure/developer?newapp=).\n - Generate a key hash value.\n - Configure package name and hash values on your [LinkedIn application settings](https://www.linkedin.com/developer/apps).\n\nModify the following files under your `{YourApp}/android`. Some of them should be automatically done by `react-native install`. If not, do it yourself:\n - Modify your `{YourApp}/android/settings.gradle`:\n```\ninclude ':linkedin-sdk'\ninclude ':react-native-linkedin-sdk'\nproject(':react-native-linkedin-sdk').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-linkedin-sdk/android')\n```\n\n - Modify your `{YourApp}/android/app/build.gradle`:\n```\ndependencies {\n    compile project(':linkedin-sdk')\n    compile project(':react-native-linkedin-sdk')\n}\n```\n\n - Modify your `{YourApp}/android/app/src/main/java/com/{YourApp}/MainApplication.java`:\n```\nimport com.reactlibrary.linkedinsdk.RNLinkedInSessionManagerPackage; // Add this.\n\n...in your class MainApplication...\n        @Override\n        protected List\u003cReactPackage\u003e getPackages() {\n            return Arrays.\u003cReactPackage\u003easList(\n                    new MainReactPackage(),\n                    new RNLinkedInSessionManagerPackage(), // Add this.\n                    ...other packages...\n            );\n        }\n```\n\n\n## iOS\n\nFollow instructions from [Official Guide](https://developer.linkedin.com/docs/ios-sdk) to:\n - [Create an application on LinkedIn](https://www.linkedin.com/secure/developer?newapp=), if haven't done it for Android already.\n - [Configure your app on LinkedIn](https://www.linkedin.com/developer/apps).\n - Configure your application's Info.plist.\n - Important! Do not add `Whitelisting LinkedIn Custom Schemes`. See the [reason](https://github.com/tonyli508/LinkedinSwift/issues/22).\n\n\nInstall [tonyli508/LinkedinSwift](https://github.com/tonyli508/LinkedinSwift):\n - Add `pod 'LinkedinSwift', '~\u003e 1.6.6'` to your `{YourApp}/ios/Podfile`.\n - Run `pod install` under `{YourApp}/ios`.\n\n\nAdd to your `{YourApp}/ios/{YourApp}/AppDelegate.m`:\n```\n- (BOOL)application:(UIApplication *)application\n            openURL:(NSURL *)url\n  sourceApplication:(NSString *)sourceApplication\n         annotation:(id)annotation {\n  if ([LinkedinSwiftHelper shouldHandleUrl:url]) {\n    return [LinkedinSwiftHelper application:application openURL:url sourceApplication:sourceApplication annotation:annotation];\n  }\n\n  // ... your code\n\n  return YES;\n}\n```\n\n\nAdd to your `{YourApp}/ios/{YourApp}/AppDelegate.h`:\n```\n#import \u003cLinkedinSwift/LSHeader.h\u003e\n```\n\nMake sure you have a Swift Bridging Header for your project. Here's [how to create one](http://www.learnswiftonline.com/getting-started/adding-swift-bridging-header/), if you don't.\nAdd to your Swift Bridging Header, `{YourApp}-Bridging-Header.h`:\n```\n#import \u003cReact/RCTBridgeModule.h\u003e\n#import \u003cReact/RCTViewManager.h\u003e\n#import \u003cReact/RCTEventEmitter.h\u003e\n#import \u003cLinkedInSwift/LSHeader.h\u003e\n```\n\n\nLink `react-native-linkedin-sdk`\n- Open up your project in xcode and right click the package.\n- Click `Add files to '{YourApp}'`.\n- Select to `{YourApp}/node_modules/react-native-linkedin-sdk/ios/RNLinkedInSessionManager`.\n- Click 'Add'.\n- Click your project in the navigator on the left and go to `Build Settings`.\n- Search for `Header Search Paths`.\n- Double click on the value column.\n- Add `$(SRCROOT)/../node_modules/react-native-linkedin-sdk/ios/RNLinkedInSessionManager`.\n\n\n\n## Usage\n```javascript\nimport LinkedInSDK from 'react-native-linkedin-sdk';\n\n// later in your code...\nasync yourMethod() {\n  const token = await LinkedInSDK.signIn({\n    // https://developer.linkedin.com/docs/oauth2\n\n    // iOS (Required)\n    // The \"API Key\" value generated when you registered your application.\n    clientID: 'your_client_id',\n\n    // iOS (Required)\n    clientSecret: 'your_client_secret',\n\n    // iOS (Required)\n    // A unique string value of your choice that is hard to guess. Used to prevent CSRF.\n    state: 'some_state_value',\n\n    // iOS, Android (Required)\n    scopes: [\n      'r_basicprofile',\n      'r_emailaddress',\n      'w_share',\n    ],\n\n    // iOS (Required)\n    // The URI your users will be sent back to after authorization.  This value must match one of the defined OAuth 2.0 Redirect URLs in your application configuration.\n    // e.g. https://www.example.com/auth/linkedin\n    redirectUri: 'your_oauth2_redirect_url',\n  });\n\n  const profile = await LinkedInSDK.getRequest('https://api.linkedin.com/v1/people/~?format=json');\n\n  console.log(token, profile);\n}\n```\n\n\n## Tested Environments\n\nI only tested with the following environments:\n - Swift version 3.0.2 (swiftlang-800.0.63 clang-800.0.42.1) / Target: x86_64-apple-macosx10.9\n - Xcode Version 8.2.1 (8C1002)\n - Android Studio 2.2.3 / Build #AI-145.3537739, built on December 2, 2016 / JRE: 1.8.0_112-release-b05 x86_64 / JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o\n\n## Alternatives\n* [react-native-linkedin](https://github.com/xcarpentier/react-native-linkedin)\n\n## LICENSE\n```\nMIT License\n\nCopyright (c) 2017 Joon Ho Cho\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoonhocho%2Freact-native-linkedin-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoonhocho%2Freact-native-linkedin-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoonhocho%2Freact-native-linkedin-sdk/lists"}