Pre-requisite

1. 앱의 네이티브 권한 설정

  • android>app>src>main>AndroidManifest.xml

<uses-permission android:name="android.permission.INTERNET" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-feature android:name="android.hardware.audio.output" />
<uses-feature android:name="android.hardware.microphone" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.BLUETOOTH" android:maxSdkVersion="30" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" android:maxSdkVersion="30" />
<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
  • ios>Runner>info.plist

<key>NSCameraUsageDescription</key>
<string>$(PRODUCT_NAME) Camera Usage!</string>
<key>NSMicrophoneUsageDescription</key>
<string>$(PRODUCT_NAME) Microphone Usage!</string>

2. 패키지 지원 설정

옴니톡 React-native SDK는 react-native-webrtc 라이브러리에 의존하고 있습니다. 관련 지원 설정이 필요합니다.

  • react-native-webrtc (^111.0.1)

    • android> app> build.gradle android section

    compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_8
            targetCompatibility JavaVersion.VERSION_11
        }
    • ios > Podfile

      platform ≥ 12.0

3. 최소 지원 사양

지원 아키텍처는 다음과 같습니다.

  • Android: armeabi-v7a, arm64-v8a, x86, x86_64

  • iOS: arm64, x86_64

안드로이드 지원 최소 compile sdk 버전은 다음과 같습니다.

  • android> app> build.gradle

android {
	compileSdkVersion 33
}

4. 앱 개발 공통 사항

Step 0. SDK 객체 초기화

콘솔에서 발급받은 Service Id와 Service Key로 SDK를 초기화 합니다. 해당 정보는 노출되지 않도록 주의하여야 합니다. 초기화된 SDK 객체는 이후 모든 메서드 호출에 사용됩니다.

Omnitalk SDK는 싱글톤 패턴으로 제공됩니다. 아래 방법으로 SDK를 초기화시키고 객체를 얻을 수 있습니다.

import Omnitalk from 'omnitalk-rn-sdk';
const SERVICE_ID = '발급받은 service id';
const SERVICE_KEY = '발급받은 service key';  

Omnitalk.sdkInit(SERVICE_ID, SERVICE_KEY);
const sdk = Omnitalk.getInstance();

Last updated