Skip to content

Commit

Permalink
Merge pull request #8911 from element-hq/feature/bma/jitsi-10.2.0
Browse files Browse the repository at this point in the history
Upgrade Jitsi to 10.2.0
  • Loading branch information
bmarty committed Sep 19, 2024
2 parents 6a8e978 + da94bb8 commit 04a49e9
Show file tree
Hide file tree
Showing 6 changed files with 15 additions and 17 deletions.
4 changes: 2 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -96,9 +96,9 @@ allprojects {
}
// Jitsi repo
maven {
url "https://github.com/element-hq/jitsi_libre_maven/raw/main/android-sdk-8.1.1"
url "https://github.com/element-hq/jitsi_libre_maven/raw/main/mobile-sdk-10.2.0"
// Note: to test Jitsi release you can use a local file like this:
// url "file:///Users/bmarty/workspaces/jitsi_libre_maven/android-sdk-8.1.1"
// url "file:///Users/bmarty/workspaces/jitsi_libre_maven/mobile-sdk-10.2.0"
content {
groups.jitsi.regex.each { includeGroupByRegex it }
groups.jitsi.group.each { includeGroup it }
Expand Down
1 change: 1 addition & 0 deletions dependencies_groups.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ ext.groups = [
'com.facebook.flipper',
'com.facebook.fresco',
'com.facebook.infer.annotation',
'com.facebook.react',
'com.facebook.soloader',
'com.facebook.stetho',
'com.facebook.yoga',
Expand Down
18 changes: 6 additions & 12 deletions docs/jitsi.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,18 +28,18 @@ The generated maven repository is then host in the project https://github.com/el

#### Jitsi version

Update the script `./tools/jitsi/build_jisti_libs.sh` with the tag of the project `https://github.com/jitsi/jitsi-meet`.
Update the script `./tools/jitsi/build_jitsi_libs.sh` with the tag of the project `https://github.com/jitsi/jitsi-meet`.

Latest tag can be found from this page: https://github.com/jitsi/jitsi-meet-release-notes/blob/master/CHANGELOG-MOBILE-SDKS.md

Currently we are building the version with the tag `android-sdk-8.1.1`.
Currently we are building the version with the tag `mobile-sdk-10.2.0`.

#### Run the build script

At the root of the Element Android, run the following script:

```shell script
./tools/jitsi/build_jisti_libs.sh
./tools/jitsi/build_jitsi_libs.sh
```

It will build the Jitsi Meet Android library and put every generated files in the folder `/tmp/jitsi`
Expand All @@ -49,21 +49,15 @@ It will build the Jitsi Meet Android library and put every generated files in th
- Update the file `./build.gradle` to use the previously created local Maven repository. Currently we have this line:

```groovy
url "https://github.com/element-hq/jitsi_libre_maven/raw/main/android-sdk-8.1.1"
url "https://github.com/element-hq/jitsi_libre_maven/raw/main/mobile-sdk-10.2.0"
```

You can uncomment and update the line starting with `// url "file://...` and comment the line starting with `url`, to test the library using the locally generated Maven repository.

- Update the dependency of the Jitsi Meet library in the file `./vector/build.gradle`. Currently we have this line:

```groovy
api('org.jitsi.react:jitsi-meet-sdk:8.1.1')
```

- Update the dependency of the WebRTC library in the file `./vector/build.gradle`. Currently we have this line:

```groovy
implementation('com.facebook.react:react-native-webrtc:111.0.0-jitsi-13672566@aar')
api('org.jitsi.react:jitsi-meet-sdk:10.2.0')
```

- Perform a gradle sync and build the project
Expand All @@ -88,7 +82,7 @@ If all the tests are passed, you can export the generated Jitsi library to our M
- Update the file `./build.gradle` to use the previously created Maven repository. Currently we have this line:

```groovy
url "https://github.com/element-hq/jitsi_libre_maven/raw/main/android-sdk-8.1.1"
url "https://github.com/element-hq/jitsi_libre_maven/raw/main/mobile-sdk-10.2.0"
```

- Build the project and perform the sanity tests again.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ export LIBRE_BUILD=true
cd jitsi-meet

# Get the latest version from the changelog: https://github.com/jitsi/jitsi-meet-release-notes/blob/master/CHANGELOG-MOBILE-SDKS.md
git checkout android-sdk-8.1.1
git checkout mobile-sdk-10.2.0

echo
echo "##################################################"
Expand Down
5 changes: 4 additions & 1 deletion vector/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ dependencies {
implementation "androidx.emoji2:emoji2:1.3.0"

// Jitsi
api('org.jitsi.react:jitsi-meet-sdk:8.1.1') {
api('org.jitsi.react:jitsi-meet-sdk:10.2.0') {
exclude group: 'com.google.firebase'
exclude group: 'com.google.android.gms'
exclude group: 'com.android.installreferrer'
Expand All @@ -259,6 +259,9 @@ dependencies {
// The library exports a jetified artifact but doesn't remove the support library dependency
// https://github.com/MatrixFrog/Android-ScalableVideoView/blob/master/gradle.properties#L1
exclude group: 'com.android.support', module: 'appcompat-v7'

// transitive needed to pull in the react-native dependency
transitive = true
}

// QR-code
Expand Down
2 changes: 1 addition & 1 deletion vector/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION" />

<!-- Jitsi SDK is now API23+ -->
<uses-sdk tools:overrideLibrary="com.swmansion.gesturehandler,org.jitsi.meet.sdk,com.oney.WebRTCModule,com.learnium.RNDeviceInfo,com.reactnativecommunity.asyncstorage,com.ocetnik.timer,com.calendarevents,com.reactnativecommunity.netinfo,com.kevinresol.react_native_default_preference,com.rnimmersive,com.corbt.keepawake,com.BV.LinearGradient,com.horcrux.svg,com.oblador.performance,com.reactnativecommunity.slider,com.brentvatne.react,com.reactnativecommunity.clipboard,com.swmansion.gesturehandler.react,org.linusu,org.reactnative.maskedview,com.reactnativepagerview,com.swmansion.reanimated,com.th3rdwave.safeareacontext,com.swmansion.rnscreens,org.devio.rn.splashscreen,com.reactnativecommunity.webview,org.wonday.orientation" />
<uses-sdk tools:overrideLibrary="com.swmansion.gesturehandler,org.jitsi.meet.sdk,com.oney.WebRTCModule,com.learnium.RNDeviceInfo,com.reactnativecommunity.asyncstorage,com.ocetnik.timer,com.calendarevents,com.reactnativecommunity.netinfo,com.kevinresol.react_native_default_preference,com.rnimmersive,com.rnimmersivemode,com.corbt.keepawake,com.BV.LinearGradient,com.horcrux.svg,com.oblador.performance,com.reactnativecommunity.slider,com.brentvatne.react,com.reactnativecommunity.clipboard,com.swmansion.gesturehandler.react,org.linusu,org.reactnative.maskedview,com.reactnativepagerview,com.swmansion.reanimated,com.th3rdwave.safeareacontext,com.swmansion.rnscreens,org.devio.rn.splashscreen,com.reactnativecommunity.webview,org.wonday.orientation" />

<!-- Adding CAMERA permission prevents Chromebooks to see the application on the PlayStore -->
<!-- Tell that the Camera is not mandatory to install the application -->
Expand Down

0 comments on commit 04a49e9

Please sign in to comment.