Getting Started
This library under development, if you found a bug, please open an issue from here.
react-native-snapchat-camera-kit
is a 3rd party library, we are working on this in our free time. Fixing bugs and development of awaiting features may take time.
It only works on physical devices, not will work with simulator.
Installing the library
Install react-native-snapchat-camera-kit through npm or yarn:
- npm
- yarn
npm i react-native-snapchat-camera-kit
npx pod-install
yarn add react-native-snapchat-camera-kit
npx pod-install
Other Required Steps
Android
- Open your project's
AndroidManifest.xml
and add the following lines:
<uses-permission android:name="android.permission.CAMERA" />
<!-- optionally, if you want to record audio: -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
- Edit
android/app/build.gradle
file like below:
android {
//...
packagingOptions {
pickFirst '**/libcrypto.so'
pickFirst '**/libssl.so'
}
}
iOS
- Open your project's
Info.plist
and add the following lines:
<key>NSCameraUsageDescription</key>
<string>$(PRODUCT_NAME) needs access to your Camera.</string>
<!-- optionally, if you want to record audio: -->
<key>NSMicrophoneUsageDescription</key>
<string>$(PRODUCT_NAME) needs access to your Microphone.</string>
Defining Credentials
There are two ways to set credentials: during build time or at runtime.
Build Time
You can put your credentials into your native files.
Android
Add secrets to AndroidManifest.xml
file like below:
<meta-data
android:name="com.snap.camerakit.api.token"
android:value="SNAPCHAT-CAMERA-KIT-API-KEY" />
iOS
Add secrets to Info.plist
file like below:
<key>SCCameraKitAPIToken</key>
<string>SNAPCHAT-CAMERA-KIT-API-KEY</string>
Runtime
It is not necessary to define secrets in native code; it can be defined at runtime.
import { init } from 'react-native-snapchat-camera-kit';
init({
apiKey: 'SNAPCHAT-CAMERA-KIT-API-KEY',
});
Prepare Lenses
You have to define you lens group id/s before use lenses. Checkout Defining Lens Group Id section.