iOS and Android Native wrapper for Line's MobileSDK.
- React native
0.48.+. - LineSDK iOS
5.0.0and Android4.0.8.
First, install the npm package and link it to your Android and iOS projects with react-native link.
npm install react-native-line-sdk
react-native link react-native-line-sdkFollow all the configuration steps in Line's iOS integration guide
- Follow all the configuration steps in Line's Android integration guide
- Add the string
line_channel_idto your strings file with the the channel id that you have on your line console.
<string name="line_channel_id" translatable="false">Your channel id here</string>- Download the line Android SDK here and save it on a new folder named
libsunder yourappfolder on your android project. - Add the following to your app's build.gradle:
repositories {
flatDir {
dirs 'libs'
}
}First, require the LineLogin module:
import LineLogin from 'react-native-line-sdk'Then, you can start using all the functions that are available:
-
login = () => Promise<{Profile, AccessToken}>: Starts the login flow of Line's SDK (Opens the apps if it's installed and defaults to the browser otherwise.)` -
loginWithPermissions = (permissions) => Promise<{Profile, AccessToken}>: iOS ONLY Works as theloginfunction but you can provide custom permissions settings. -
currentAccessToken = () => Promise<AccessToken>: Returns the current access token for the currently logged in user. -
getUserProfile = () => Promise<Profile>: Returns the profile of the currently logged in user. -
logout = () => Promise<Void>: Logs out the currently logged in user.
Example:
LineLogin.login()
.then((user) => {
console.log(user.profile.displayName)
})
.catch((err) => {
console.log(err)
})The following objects are returned on the methods described above:
- Profile:
{
displayName: String,
userID: String,
statusMessage: String,
pictureURL: String?,
}- AccessToken:
{
accessToken: String,
expirationDate: String,
}To see more of react-native-line-sdk in action you can check out the source in the example folder.
react-native-line-sdk is available under the MIT license. See the LICENCE file for more info.