Get authorized and fetch user profile, share videos
npm install react-native-tiktok
cd ios && pod install
Follow Tiktok quickstart documentation. Please note 1 and 2 steps are not required!!
Add Privacy - Photo Library Additions Usage Description
permission to your info.plist in order to have an access to all your videos in your library.
If you see some of these errors
ld: warning: Could not find or use auto-linked library 'swiftCoreMIDI'
ld: warning: Could not find or use auto-linked library 'swiftUniformTypeIdentifiers'
ld: warning: Could not find or use auto-linked library 'swiftWebKit'
Then add a new swift file to your project and enable bridging-header.
import { init, auth, share, events } from "react-native-tiktok";
If you are on Android this methid is necessary to initialize tiktok sdk. Please obtain a client key and secret from the developer portal on https://developers.tiktok.com under "My apps".
This guide details how to enable authentication from your app to TikTok. After successfully completing authentication with TikTok, users will be able to access basic user data (display name and avatar).
Callback function returns 3 types of response.
1. code - used to request user access token
2. error
3. errMsg - If error is true then you can show what was the exact error
share method allows users to share videos from your app to TikTok, filePath shoud be valid mp4 video file path. Callback function returns string type responses:
Responses |
---|
PUBLISHED |
NETWORK_ERROR |
SHARING_CANCELED |
SHARING_FAILED |
UNSUPPORTED |
Since Android side doesn't return response immediately, you need to set event listener in order to be informed when authentication or sharing processes are finished.
useEffect(() => {
const authListener = events.addListener('onAuthCompleted', (resp) => {
// response contains returned status(errorCode) and code (if status is 0)
// you can check it here https://developers.tiktok.com/doc/getting-started-android-handling-errors
});
const shareListener = events.addListener('onShareCompleted', (resp) => {
// response contains returned errorCode
});
return () => {
authListener.remove();
shareListener.remove();
}
}, []);
MIT