fix(android) exclude the Giphy SDK from the libre build

Fixes: https://github.com/jitsi/jitsi-meet/issues/11759
This commit is contained in:
Saúl Ibarra Corretgé 2022-07-21 12:21:27 +02:00 committed by Saúl Ibarra Corretgé
parent 53e05fdea9
commit 2def75db50
3 changed files with 24 additions and 11 deletions

View File

@ -51,15 +51,10 @@ dependencies {
implementation 'com.google.code.gson:gson:2.8.6' implementation 'com.google.code.gson:gson:2.8.6'
implementation "androidx.startup:startup-runtime:1.1.0" implementation "androidx.startup:startup-runtime:1.1.0"
if (rootProject.ext.libreBuild) { // Only add these packages if we are NOT doing a LIBRE_BUILD
implementation(project(':react-native-device-info')) { if (!rootProject.ext.libreBuild) {
exclude group: 'com.google.firebase'
exclude group: 'com.google.android.gms'
exclude group: 'com.android.installreferrer'
}
} else {
implementation project(':react-native-amplitude') implementation project(':react-native-amplitude')
implementation project(':react-native-device-info') implementation project(':react-native-giphy')
implementation(project(":react-native-google-signin")) { implementation(project(":react-native-google-signin")) {
exclude group: 'com.google.android.gms' exclude group: 'com.google.android.gms'
exclude group: 'androidx' exclude group: 'androidx'
@ -72,9 +67,13 @@ dependencies {
implementation project(':react-native-community_clipboard') implementation project(':react-native-community_clipboard')
implementation project(':react-native-community_netinfo') implementation project(':react-native-community_netinfo')
implementation project(':react-native-default-preference') implementation project(':react-native-default-preference')
implementation(project(':react-native-device-info')) {
exclude group: 'com.google.firebase'
exclude group: 'com.google.android.gms'
exclude group: 'com.android.installreferrer'
}
implementation project(':react-native-gesture-handler') implementation project(':react-native-gesture-handler')
implementation project(':react-native-get-random-values') implementation project(':react-native-get-random-values')
implementation project(':react-native-giphy')
implementation project(':react-native-immersive') implementation project(':react-native-immersive')
implementation project(':react-native-keep-awake') implementation project(':react-native-keep-awake')
implementation project(':react-native-masked-view_masked-view') implementation project(':react-native-masked-view_masked-view')

View File

@ -46,6 +46,8 @@ import java.util.Arrays;
import java.util.List; import java.util.List;
class ReactInstanceManagerHolder { class ReactInstanceManagerHolder {
private static final String TAG = ReactInstanceManagerHolder.class.getSimpleName();
/** /**
* FIXME (from linter): Do not place Android context classes in static * FIXME (from linter): Do not place Android context classes in static
* fields (static reference to ReactInstanceManager which has field * fields (static reference to ReactInstanceManager which has field
@ -110,7 +112,6 @@ class ReactInstanceManagerHolder {
new com.corbt.keepawake.KCKeepAwakePackage(), new com.corbt.keepawake.KCKeepAwakePackage(),
new com.facebook.react.shell.MainReactPackage(), new com.facebook.react.shell.MainReactPackage(),
new com.reactnativecommunity.clipboard.ClipboardPackage(), new com.reactnativecommunity.clipboard.ClipboardPackage(),
new com.giphyreactnativesdk.GiphyReactNativeSdkPackage(),
new com.reactnativecommunity.netinfo.NetInfoPackage(), new com.reactnativecommunity.netinfo.NetInfoPackage(),
new com.reactnativepagerview.PagerViewPackage(), new com.reactnativepagerview.PagerViewPackage(),
new com.oblador.performance.PerformancePackage(), new com.oblador.performance.PerformancePackage(),
@ -146,6 +147,17 @@ class ReactInstanceManagerHolder {
packages.add((ReactPackage)constructor.newInstance()); packages.add((ReactPackage)constructor.newInstance());
} catch (Exception e) { } catch (Exception e) {
// Ignore any error, the module is not compiled when LIBRE_BUILD is enabled. // Ignore any error, the module is not compiled when LIBRE_BUILD is enabled.
Log.d(TAG, "Not loading AmplitudeReactNativePackage");
}
// GiphyReactNativeSdkPackage
try {
Class<?> giphyPackageClass = Class.forName("com.giphyreactnativesdk.GiphyReactNativeSdkPackage");
Constructor constructor = giphyPackageClass.getConstructor();
packages.add((ReactPackage)constructor.newInstance());
} catch (Exception e) {
// Ignore any error, the module is not compiled when LIBRE_BUILD is enabled.
Log.d(TAG, "Not loading GiphyReactNativeSdkPackage");
} }
// RNGoogleSignInPackage // RNGoogleSignInPackage
@ -155,6 +167,7 @@ class ReactInstanceManagerHolder {
packages.add((ReactPackage)constructor.newInstance()); packages.add((ReactPackage)constructor.newInstance());
} catch (Exception e) { } catch (Exception e) {
// Ignore any error, the module is not compiled when LIBRE_BUILD is enabled. // Ignore any error, the module is not compiled when LIBRE_BUILD is enabled.
Log.d(TAG, "Not loading RNGoogleSignInPackage");
} }
return packages; return packages;
@ -240,7 +253,7 @@ class ReactInstanceManagerHolder {
return; return;
} }
Log.d(ReactInstanceManagerHolder.class.getCanonicalName(), "initializing RN with Application"); Log.d(TAG, "initializing RN with Application");
reactInstanceManager reactInstanceManager
= ReactInstanceManager.builder() = ReactInstanceManager.builder()

View File

@ -19,6 +19,7 @@ export function _cleanupConfig(config: Object) {
delete config.analytics?.googleAnalyticsTrackingId; delete config.analytics?.googleAnalyticsTrackingId;
delete config.callStatsID; delete config.callStatsID;
delete config.callStatsSecret; delete config.callStatsSecret;
config.giphy = { enabled: false };
} }
} }