@jitsi/react-native-sdk

2.2.1 • Public • Published

Jitsi Meet React Native SDK

Installation

Inside your project, run;

npm i @jitsi/react-native-sdk



Additionally, if not already installed, some dependencies will need to be added.

This can be done by running the following script:

node node_modules/@jitsi/react-native-sdk/update_dependencies.js

This will check and update all your dependencies.

Because of SVG use in react native, you need to update metro.config your project's file:

const { getDefaultConfig } = require('metro-config');

module.exports = (async () => {
  const {
    resolver: {
      sourceExts,
      assetExts
    }
  } = await getDefaultConfig();

  return {
    transformer: {
      babelTransformerPath: require.resolve('react-native-svg-transformer'),
      getTransformOptions: async () => ({
        transform: {
          experimentalImportSupport: false,
          inlineRequires: true,
        },
      }),
    },
    resolver: {
      assetExts: assetExts.filter(ext => ext !== 'svg'),
      sourceExts: [...sourceExts, 'svg']
    }
  }
})();

iOS

Project Info.plist

  • Add a Privacy - Camera Usage Description
  • Add a Privacy - Microphone Usage Description

General

  • Signing & capabilites:
    • Add Background modes
      • Audio
      • Voice over IP
      • Background fetch

Run;

cd ios && pod install && cd ..

Android

  • In your build.gradle have at least minSdkVersion = 24
  • In android/app/src/debug/AndroidManifest.xml and android/app/src/main/AndroidManifest.xml, under the </application> tag, include
      <uses-permission android:name="android.permission.RECORD_AUDIO" />
      <uses-permission android:name="android.permission.CAMERA" />
  • In android/app/src/main/AndroidManifest.xml, under the </application> tag, include
    <service
       android:name="org.jitsi.meet.sdk.JitsiMeetOngoingConferenceService"
       android:foregroundServiceType="mediaProjection" />
    This will take care of the screen share feature.

If you want to test all the steps before applying them to your app, you can check our React Native SDK sample app here: https://github.com/jitsi/jitsi-meet-sdk-samples/tree/master/react-native

Using JWT tokens

  • If you are planning to use tokens or another domain you can do that by updating the following props, as shown below.
  • For example:
  <JitsiMeeting
    room={'ThisIsNotATestRoomName'}
    serverURL={'https://meet.jit.si/'}
    token={'dkhalhfajhflahlfaahalhfahfsl'} />

For more details on how you can use React Native SDK with React Native app, you can follow this link: https://jitsi.github.io/handbook/docs/dev-guide/dev-guide-react-native-sdk

Readme

Keywords

Package Sidebar

Install

npm i @jitsi/react-native-sdk

Homepage

jitsi.org

Weekly Downloads

329

Version

2.2.1

License

Apache-2.0

Unpacked Size

20.7 MB

Total Files

2109

Last publish

Collaborators

  • calinteodor
  • damencho
  • mihhu
  • andrei.gavrilescu
  • hristoterezov
  • gpolitis
  • yanas
  • jitsiorg
  • saghul
  • jallamsetty