react-native-kakao-signin
Getting started
$ npm install react-native-kakao-signin --save
or
$ yarn add react-native-kakao-signin
Mostly automatic installation
$ react-native link react-native-kakao-signin
Kakao Environment for your Project
Manual installation
iOS
- In XCode, in the project navigator, right click
Libraries
➜Add Files to [your project's name]
- Go to
node_modules
➜react-native-kakao-signin
and addRNKaKaoSignin.xcodeproj
- In XCode, in the project navigator, select your project. Add
libRNKaKaoSignin.a
to your project'sBuild Phases
➜Link Binary With Libraries
- Run your project (
Cmd+R
)<
- Your Project
- Build Setting
- Other Linker Flags: -force_load $(PROJECT_DIR)/../node_modules/react-native-kakao-signin/ios/KakaoOpenSDK.framework/KakaoOpenSDK
- Header Search Paths: $(PROJECT_DIR)/../node_modules/react-native-kakao-signin/ios
- Framework search Paths $(PROJECT_DIR)/../node_modules/react-native-kakao-signin/ios
- Build Setting
* 'AppDelegate.m'
#... - BOOLapplication:UIApplication *application openURL:NSURL *url sourceApplication:NSString *sourceApplication annotation:idannotation ... if KOSession isKakaoAccountLoginCallback:url return KOSession handleOpenURL:url; ... - BOOLapplication:UIApplication *application openURL:NSURL *url options:NSDictionary<NSString *id> *options ... if KOSession isKakaoAccountLoginCallback:url return KOSession handleOpenURL:url; ... - voidapplicationDidBecomeActive:UIApplication *application KOSession handleDidBecomeActive;
Android
- Open up
android/app/src/main/java/[...]/MainActivity.java
- Add
com.sunyrora.kakaosignin;
to the imports at the top of the file - Add
new RNKaKaoSigninPackage()
to the list returned by thegetPackages()
method
- Append the following lines to
android/settings.gradle
:include ':react-native-kakao-signin' project(':react-native-kakao-signin').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-kakao-signin/android')
- Insert the following lines inside the dependencies block in
android/app/build.gradle
:compile project(':react-native-kakao-signin')
- Your Project
- AndroidManifest.xml
<meta-data android:name="com.kakao.sdk.AppKey" android:value="@string/kakao_app_key" />
- res/values/string.xml
<string name="kakao_app_key">{your kakao app key}</string>
- build.gradle(project)
repositories { mavenLocal() maven { url 'http://devrepo.kakao.com:8088/nexus/content/groups/public/' } }
- 'MainApplication.java'
; public implements ReactApplication ... @Override protected List<ReactPackage> { return Arrays<ReactPackage>; }
Usage - SignIn
; async { // try const res = await KakaoSignin; const resBody = await res; catcherr //Error handle.. console; }
- return values(resBody)
{
id,
kaccount_email,
// properties can be null if there is no data from the server
properties: {
profile_image,
nickname
}
}
Usage - SignOut
; async { // ..... try let res = await KakaoSignin; // return true/false catcherr // error handle console; // ....}