I have issue in build.gradle first i got DSO error tht i solved by using custom plugin and added into app.json but after that I got another error like No static method createEGl14 so I updated the minSdkVersion = 24 but that lead me to the again DSO problem.

//build.gradle

buildscript {
    ext {
        buildToolsVersion = findProperty('android.buildToolsVersion') ?: '31.0.0'
        // minSdkVersion = Integer.parseInt(findProperty('android.minSdkVersion') ?: '24')
        minSdkVersion = 24
        compileSdkVersion = Integer.parseInt(findProperty('android.compileSdkVersion') ?: '31')
        targetSdkVersion = Integer.parseInt(findProperty('android.targetSdkVersion') ?: '31')
        if (findProperty('android.kotlinVersion')) {
            kotlinVersion = findProperty('android.kotlinVersion')
        }
        frescoVersion = findProperty('expo.frescoVersion') ?: '2.5.0'

        if (System.properties['os.arch'] == 'aarch64') {
            // For M1 Users we need to use the NDK 24 which added support for aarch64
            ndkVersion = '24.0.8215888'
        } else {
            // Otherwise we default to the side-by-side NDK version from AGP.
            ndkVersion = '21.4.7075529'
        }
    }
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath('com.android.tools.build:gradle:7.2.1')
        classpath('com.facebook.react:react-native-gradle-plugin')
        classpath('de.undercouch:gradle-download-task:5.0.1')
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

def REACT_NATIVE_VERSION = new File(['node', '--print', "JSON.parse(require('fs').readFileSync(require.resolve('react-native/package.json'), 'utf-8')).version"].execute(null, rootDir).text.trim())

allprojects {
    configurations.all {
        resolutionStrategy {
            force "com.facebook.react:react-native:" + REACT_NATIVE_VERSION
        }
    }

    repositories {
        mavenLocal()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url(new File(['node', '--print', "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), '../android'))
        }
        maven {
            // Android JSC is installed from npm
            url(new File(['node', '--print', "require.resolve('jsc-android/package.json')"].execute(null, rootDir).text.trim(), '../dist'))
        }

        google()
        mavenCentral {
            // We don't want to fetch react-native from Maven Central as there are
            // older versions over there.
            content {
                excludeGroup 'com.facebook.react'
            }
        }
        maven { url 'https://www.jitpack.io' }
    }
}

//custome plugin to solve DSO issue.

const {
  createRunOncePlugin,
  withAppBuildGradle,
} = require("@expo/config-plugins");

const withAppBuildGradleModified = (config) => {
  return withAppBuildGradle(config, async (file) => {
    const modResults = file.modResults;
    modResults.contents =
      modResults.contents +
      "\nandroid.packagingOptions.jniLibs.useLegacyPackaging = true\n";
    return file;
  });
};

module.exports = createRunOncePlugin(
  withAppBuildGradleModified,
  "withAppBuildGradleModified",
  "1.0.0"
);

//app.json

{
  "expo": {
    "name": "videocall_webrtc",
    "slug": "videocall_webrtc",
    "version": "1.0.0",
    "assetBundlePatterns": ["**/*"],
    "plugins": ["./plugin.js", "@config-plugins/react-native-webrtc"]
  }
}

Could you please help me how to resolve this issue. I am using JDK 11 and not using EAS build it is an Bare expo project. Could you please share any example or anything that could help me. Thank you in advance.

0

There are 0 answers