Skip to content

xmartlabs/react-native-line

Repository files navigation

React Native Line

npm version PRs welcome

Line SDK wrapper for React Native πŸš€

Requirements

  • Android minSdkVersion needs to be at least version 24.
  • iOS deploymentTarget needs to be at least version 15.1.
  • LINE developer account with a channel created.

Installation

With Expo

  1. Install the JavaScript side with:

    npx expo install @xmartlabs/react-native-line
  2. Add the plugin expo-build-properties to your app.json:

    "plugins": [
      [
        "expo-build-properties",
        {
          "ios": {
            "useFrameworks": "static" // This is required
          }
        }
      ]
    ]

With react-native-cli

  1. Install library:

    npm install @xmartlabs/react-native-line
    
    # --- or ---
    
    yarn add @xmartlabs/react-native-line
  2. Link native code:

    cd ios && pod install

Usage

  1. Import the LineLogin module:

    import LineLogin from '@xmartlabs/react-native-line'
  2. Initialize the module with the setup method:

    useEffect(() => {
      LineLogin.setup('YOUR_CHANNEL_ID')
    }, [])
  3. Login with the login method:

    LineLogin.login({})

API

Function Description
login(args?: LoginArguments): Promise<LoginResult> Starts the login flow of Line's SDK (Opens the apps if it's installed and defaults to the browser otherwise). It accepts the same argumements as the LineSDK, in an object { key: value }, defaults the same way as LineSDK too.
getCurrentAccessToken(): Promise<AccessToken> Returns the current access token for the currently logged in user.
getProfile(): Promise<UserProfile> Returns the profile of the currently logged in user.
logout(): Promise<void> Logs out the currently logged in user.
refreshToken(): Promise<AccessToken> Refreshes the access token and returns it.
verifyAccessToken(): Promise<AccessTokenVerifyResult> Verifies the access token and returns it.
getBotFriendshipStatus(): Promise<BotFriendshipStatus> Gets bot friendship status if configured.

Example

If you want to see @xmartlabs/react-native-line in action, just move into the example folder and run npm install and then npm run ios/npm run android. By seeing its source code, you will have a better understanding of the library usage.

License

@xmartlabs/react-native-line is available under the MIT license. See the LICENCE file for more info.

Xmartlabs Logo

Created with ❀️ by Xmartlabs