@xmartlabs/react-native-line
v4.0.0
Published
React Native Line wrapper
Downloads
3,333
Readme
Line SDK wrapper for React Native 🚀
- LINE SDK v5 for iOS, wrapped with Swift.
- LINE SDK v5 for Android, wrapped with Kotlin.
Requirements
- Android
minSdkVersion
needs to be at least version24
. - iOS
deploymentTarget
needs to be at least version15.1
. - LINE developer account with a channel created.
Installation
With Expo
Install the JavaScript side with:
npx expo install @xmartlabs/react-native-line
Add the plugin
expo-build-properties
to yourapp.json
:"plugins": [ [ "expo-build-properties", { "ios": { "useFrameworks": "static" // This is required } } ] ]
With react-native-cli
Install library:
npm install @xmartlabs/react-native-line # --- or --- yarn add @xmartlabs/react-native-line
Link native code:
cd ios && pod install
Usage
Import the
LineLogin
module:import LineLogin from '@xmartlabs/react-native-line'
Initialize the module with the
setup
method:useEffect(() => { LineLogin.setup('YOUR_CHANNEL_ID') }, [])
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.
Contributors
License
@xmartlabs/react-native-line
is available under the MIT license. See the LICENCE file for more info.