Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/voximplant/react-native-voximplant

Voximplant mobile SDK for React Native (iOS/Android)
https://github.com/voximplant/react-native-voximplant

android client-sdk ios react voximplant

Last synced: about 1 month ago
JSON representation

Voximplant mobile SDK for React Native (iOS/Android)

Lists

README

        

# Voximplant SDK for React Native

Voximplant Mobile SDK module for React Native. It lets developers embed realtime voice and video communication into React Native apps and works together with [Voximplant cloud platform](http://voximplant.com). The SDK uses WebRTC for media processing.

## Example
You can get the demo app from [http://github.com/voximplant/react-native-demo](http://github.com/voximplant/react-native-demo)

## Supported React Native Versions
React Native >= 0.47.0

## Getting started

`yarn add react-native-voximplant`

### iOS

#### Automatic installation
- React Native 0.60+

CLI autolink feature links the module while building the app.

#### Manual install (React Native <= 0.59)

1. Make sure you have "React Native" project created with `react-native init`
2. Open or create ios/Podfile and add the following dependencies. Please use demo project Podfile ad a reference.
```
pod 'react-native-voximplant', path: '../node_modules/react-native-voximplant'
```
3. Add `use_frameworks!` at the top of your target configuration.

Note: since the version 1.6.0, `use_frameworks!` is no longer mandatory.
4. Run `pod install` from /ios/
5. Start XCode and open generated .xcworkspace
6. Check if there is no `*.xcodeproj` in the project navigation (see the `Libraries` section). In case of any please remove them.
Since React dependencies are added via Podfile, double integration of its modules may lead to unpredictable/incorrect behavior of an application.
7. Run your project (`Cmd+R`)

### Android

#### Automatic installation
- React Native 0.60+

CLI autolink feature links the module while building the app.

- React Native <= 0.59

Run `react-native link react-native-voximplant`

#### Manual install

1. Make sure you have "React Native" project created with `react-native init`
2. It is required to add Java 8 support.
- Open `android/app/build.gradle` file and add the following lines to ‘android’ section:
```
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
```
- If you're using gradle version < 3.0.0, do this step and the next one OR run the `gradle sync` command in Android Studio, then follow the provided hints.
Open the `android/build.gradle` file and update the Android plugin for gradle:
```
dependencies {
// use the latest available version
classpath 'com.android.tools.build:gradle:3.1.3'
}​

```
- Open the android/gradle/wrapper/gradle-wrapper.properties file and edit the distributionUrl to gradle-4.4-all.zip:
```
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
```
3. Run the `react-native link` command to link react-native-voximplant Android dependency OR perform the following steps:
- Open up `android/app/main/java/[...]/MainApplication.java`
- Add `import com.voximplant.reactnative.VoxImplantReactPackage;` to the imports at the top of the file

Add `new VoxImplantReactPackage()` to the list returned by the `getPackages()` method

- Append the following lines to `android/settings.gradle`:

```
include ':react-native-voximplant'
project(':react-native-voximplant').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-voximplant/android')
```
- Insert the following lines inside the dependencies block in `android/app/build.gradle`:

```
compile project(':react-native-voximplant')
```

## Usage
You will need free Voximplant developer account setup for making and receiving calls using the SDK.
Learn more at the [Getting started](https://voximplant.com/docs/introduction) page.

Official guides:
- [Adding Voximplant SDKs to Your App](https://voximplant.com/docs/introduction/integration/adding_sdks)

## Have a question

- contact us via `[email protected]`
- create an issue
- join our developer [community](https://discord.gg/sfCbT5u)