homeeondemand / react-native-mapbox-navigation

A navigation UI ready to drop into your React Native application
MIT License
153 stars 118 forks source link

Map is Not Showing in Android. #114

Open NidheeshVgopal opened 1 year ago

NidheeshVgopal commented 1 year ago

React-Native Version: 0.71.4 "@homee/react-native-mapbox-navigation": "^1.1.0", "@rnmapbox/maps": "^10.0.6". In my project, there is a requirement to use map and turn-by-turn navigation together. After some fixes, ios worked fine. In android side, fixed some issues and finally got issue for

Duplicate class com.mapbox.android.core.location.LocationEngine found in modules jetified-common-23.5.0-runtime (com.mapbox.common:common:23.5.0) and jetified-mapbox-android-core-5.0.0-runtime (com.mapbox.mapboxsdk:mapbox-android-core:5.0.0) Duplicate class com.mapbox.android.core.location.LocationEngineCallback found in modules jetified-common-23.5.0-runtime (com.mapbox.common:common:23.5.0) and jetified-mapbox-android-core-5.0.0-runtime (com.mapbox.mapboxsdk:mapbox-android-core:5.0.0) Duplicate class com.mapbox.android.core.location.LocationEngineProvider found in modules jetified-common-23.5.0-runtime (com.mapbox.common:common:23.5.0) and jetified-mapbox-android-core-5.0.0-runtime (com.mapbox.mapboxsdk:mapbox-android-core:5.0.0) Duplicate class com.mapbox.android.core.location.LocationEngineRequest found in modules jetified-common-23.5.0-runtime (com.mapbox.common:common:23.5.0) and jetified-mapbox-android-core-5.0.0-runtime (com.mapbox.mapboxsdk:mapbox-android-core:5.0.0) Duplicate class com.mapbox.android.core.location.LocationEngineRequest$1 found in modules jetified-common-23.5.0-runtime (com.mapbox.common:common:23.5.0) and jetified-mapbox-android-core-5.0.0-runtime (com.mapbox.mapboxsdk:mapbox-android-core:5.0.0).

This issue was fixed by changing ode_modules/@homee/react-native -mapbox-navigation/android/build.gradle'

implementation ('com.mapbox.navigation:core:1.5.0',{ exclude group: "com.mapbox.mapboxsdk", module: "mapbox-android-core" }) implementation ('com.mapbox.navigation:ui:1.5.0',{ exclude group: "com.mapbox.mapboxsdk", module: "mapbox-android-core" }) .Then the duplicate issue solved.

But after this when we took the MapboxNavigation in screen, the map is not showing. Even the buttons are not working. IMG_0040 Is there any solution for this?

Youssef-Durgham commented 1 year ago

same problem please if you find a solve told me and I will do the same.

mckeny3 commented 1 year ago

Use dropin ui from mapbox...then use native view manager to display it

Youssef-Durgham commented 1 year ago

Use dropin ui from mapbox...then use native view manager to display it

sorry for the asking but can you provide me a clear answer and I will be Grateful for you

Youssef-Durgham commented 1 year ago
Screenshot 2023-05-24 at 11 59 14 PM

and when I return from the map screen to the Home Screen I got this error

Youssef-Durgham commented 1 year ago

this is my example code https://github.com/Youssef-Durgham/alnajaf-taxi-app-zaid-master-new I don't know how to do it it take from me 48h and didn't fixed the mapbox code is inside screen folder in CaptainInfoScreen.js

NidheeshVgopal commented 1 year ago

Hi, My above issue got fixed when give the meta value inside Application tag of AndroidManifest.xml. But after this, app is getting crash on launch. This is the error on logcat :

E/AndroidRuntime: FATAL EXCEPTION: MapboxTelemetryExecutor Process: com.my_project, PID: 4855 java.lang.NoClassDefFoundError: Failed resolution of: Lcom/my_project/android/core/FileUtils;

another issue is ::=>

E/Mbgl-Mapbox: Error occurred while initializing telemetry java.lang.IllegalArgumentException: com.my_project: Targeting S+ (version 31 and above) requires that one of FLAG_IMMUTABLE or FLAG_MUTABLE be specified when creating a PendingIntent. Strongly consider using FLAG_IMMUTABLE, only use FLAG_MUTABLE if some functionality depends on the PendingIntent being mutable, e.g. if it needs to be used with inline replies or bubbles. at android.app.PendingIntent.checkFlags(PendingIntent.java:401)

Youssef-Durgham commented 1 year ago

Can you see my manifest file where I can move the meta value please ? And I will see if it works or not and I will try to find solution for it and share the solution if I found it. Here is the file https://github.com/Youssef-Durgham/alnajaf-taxi-app-zaid-master-new/blob/master/android/app/src/main/AndroidManifest.xml

Youssef-Durgham commented 1 year ago

I think it most be outside activity i will try now

NidheeshVgopal commented 1 year ago

The crash issue was solved. But still getting the blank map on Android.

Youssef-Durgham commented 1 year ago

I found the solution can you share to me the way you add the <meta-data in the AndroidManifest.xml

NidheeshVgopal commented 1 year ago

" <application android:name=".MainApplication" android:label="@string/app_name" android:icon="@mipmap/ic_launcher" android:roundIcon="@mipmap/ic_launcher" android:allowBackup="false" android:usesCleartextTraffic="true" android:requestLegacyExternalStorage="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity" android:label="@string/app_name" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode" android:launchMode="singleTask" android:windowSoftInputMode="adjustPan" android:screenOrientation="portrait" android:exported="true">

  </activity>

 <meta-data android:name="MAPBOX_DOWNLOADS_TOKEN"
android:value="mapbox_secret_token" />
</application>

inside , after "

Youssef-Durgham commented 1 year ago

Yeah you should do it like that <meta-data android:name="MAPBOX_ACCESS_TOKEN" android:value="here add your public token not the private token" /> copy and paste it and told me what you get

Youssef-Durgham commented 1 year ago

Add to it the public token and the android:name should be MAPBOX_ACCESS_TOKEN

NidheeshVgopal commented 1 year ago

Now app crashes 2-3 sec after launch.

Youssef-Durgham commented 1 year ago
Screenshot 2023-05-25 at 8 36 06 AM

it works with me with this way but with a blue map with the Mapbox logo but it not show the directions try to change the build.gradle for this library inside module be copy and past all of this instead of the old `

def DEFAULT_COMPILE_SDK_VERSION = 33 def DEFAULT_BUILD_TOOLS_VERSION = '31.0.0' def DEFAULT_MIN_SDK_VERSION = 24 def DEFAULT_TARGET_SDK_VERSION = 33

def safeExtGet(prop, fallback) { rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback }

apply plugin: 'com.android.library' apply plugin: 'kotlin-android' apply plugin: 'maven-publish'

buildscript { ext.kotlin_version = '1.6.20' // The Android Gradle plugin is only required when opening the android folder stand-alone. // This avoids unnecessary downloads and potential conflicts when the library is included as a // module dependency in an application project. // ref: https://docs.gradle.org/current/userguide/tutorial_using_tasks.html#sec:build_script_external_dependencies if (project == rootProject) { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.4.1' } }

repositories { mavenCentral() }

dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } }

apply plugin: 'com.android.library' apply plugin: 'kotlin-android' apply plugin: 'maven-publish'

android { compileSdkVersion safeExtGet('compileSdkVersion', DEFAULT_COMPILE_SDK_VERSION) buildToolsVersion safeExtGet('buildToolsVersion', DEFAULT_BUILD_TOOLS_VERSION) defaultConfig { minSdkVersion safeExtGet('minSdkVersion', DEFAULT_MIN_SDK_VERSION) targetSdkVersion safeExtGet('targetSdkVersion', DEFAULT_TARGET_SDK_VERSION) versionCode 1 versionName "1.0" } lintOptions { abortOnError false } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = "1.8" } }

repositories { // ref: https://www.baeldung.com/maven-local-repository mavenLocal() maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm url "$rootDir/../node_modules/react-native/android" } maven { // Android JSC is installed from npm url "$rootDir/../node_modules/jsc-android/dist" } google() jcenter() }

dependencies { //noinspection GradleDynamicVersion implementation 'com.facebook.react:react-native:+' // From node_modules implementation 'com.mapbox.navigation:core:1.5.0' implementation 'com.mapbox.navigation:ui:1.5.0' implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" }

def configureReactNativePom(def pom) { def packageJson = new groovy.json.JsonSlurper().parseText(file('../package.json').text)

pom.project { name packageJson.title artifactId packageJson.name version = packageJson.version group = "com.homee.mapboxnavigation" description packageJson.description url packageJson.repository.baseUrl

licenses {
    license {
        name packageJson.license
        url packageJson.repository.baseUrl + '/blob/master/' + packageJson.licenseFilename
        distribution 'repo'
    }
}

} }

afterEvaluate { project -> android.libraryVariants.all { variant -> def name = variant.name.capitalize() def javaCompileTask = variant.javaCompileProvider.get()

task "jar${name}"(type: Jar, dependsOn: javaCompileTask) {
    from javaCompileTask.destinationDir
}

} }`

NidheeshVgopal commented 1 year ago

Screenshot 2023-05-25 at 8 36 06 AM it works with me with this way but with a blue map with the Mapbox logo but it not show the directions try to change the build.gradle for this library inside module be copy and past all of this instead of the old ` def DEFAULT_COMPILE_SDK_VERSION = 33 def DEFAULT_BUILD_TOOLS_VERSION = '31.0.0' def DEFAULT_MIN_SDK_VERSION = 24 def DEFAULT_TARGET_SDK_VERSION = 33

def safeExtGet(prop, fallback) { rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback }

apply plugin: 'com.android.library' apply plugin: 'kotlin-android' apply plugin: 'maven-publish'

buildscript { ext.kotlin_version = '1.6.20' // The Android Gradle plugin is only required when opening the android folder stand-alone. // This avoids unnecessary downloads and potential conflicts when the library is included as a // module dependency in an application project. // ref: https://docs.gradle.org/current/userguide/tutorial_using_tasks.html#sec:build_script_external_dependencies if (project == rootProject) { repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.4.1' } }

repositories { mavenCentral() }

dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } }

apply plugin: 'com.android.library' apply plugin: 'kotlin-android' apply plugin: 'maven-publish'

android { compileSdkVersion safeExtGet('compileSdkVersion', DEFAULT_COMPILE_SDK_VERSION) buildToolsVersion safeExtGet('buildToolsVersion', DEFAULT_BUILD_TOOLS_VERSION) defaultConfig { minSdkVersion safeExtGet('minSdkVersion', DEFAULT_MIN_SDK_VERSION) targetSdkVersion safeExtGet('targetSdkVersion', DEFAULT_TARGET_SDK_VERSION) versionCode 1 versionName "1.0" } lintOptions { abortOnError false } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } kotlinOptions { jvmTarget = "1.8" } }

repositories { // ref: https://www.baeldung.com/maven-local-repository mavenLocal() maven { // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm url "$rootDir/../node_modules/react-native/android" } maven { // Android JSC is installed from npm url "$rootDir/../node_modules/jsc-android/dist" } google() jcenter() }

dependencies { //noinspection GradleDynamicVersion implementation 'com.facebook.react:react-native:+' // From node_modules implementation 'com.mapbox.navigation:core:1.5.0' implementation 'com.mapbox.navigation:ui:1.5.0' implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" }

def configureReactNativePom(def pom) { def packageJson = new groovy.json.JsonSlurper().parseText(file('../package.json').text)

pom.project { name packageJson.title artifactId packageJson.name version = packageJson.version group = "com.homee.mapboxnavigation" description packageJson.description url packageJson.repository.baseUrl

licenses {
    license {
        name packageJson.license
        url packageJson.repository.baseUrl + '/blob/master/' + packageJson.licenseFilename
        distribution 'repo'
    }
}

} }

afterEvaluate { project -> android.libraryVariants.all { variant -> def name = variant.name.capitalize() def javaCompileTask = variant.javaCompileProvider.get()

task "jar${name}"(type: Jar, dependsOn: javaCompileTask) {
    from javaCompileTask.destinationDir
}

} }`

when I added this I got the Duplicate class com.mapbox.android.core.location.... error. How did u fixed this. i was fixed this issue, by changing the implements in the same file? is there any other option?

Youssef-Durgham commented 1 year ago

In the build.gradle in the app level add this below inside dependencies

implementation "com.mapbox.mapboxsdk:mapbox-android-core:5.0.0" 
implementation('com.mapbox.mapboxsdk:mapbox-android-core:5.0.0') {
         exclude group: 'com.mapbox.common', module: 'common'
}

and if you have an old implementation for mapbox delete them

Youssef-Durgham commented 1 year ago

And told me will you get a blue screen like mine with the mapbox logo or it will show the directions

NidheeshVgopal commented 1 year ago

In the build.gradle in the app level add this below inside dependencies

implementation "com.mapbox.mapboxsdk:mapbox-android-core:5.0.0" 
implementation('com.mapbox.mapboxsdk:mapbox-android-core:5.0.0') {
        exclude group: 'com.mapbox.common', module: 'common'
}

and if you have an old implementation for mapbox delete them

Duplicate class com.mapbox.android.core.location.LocationEngine issue is not got resolved. I have added the above inside my project/android/app/build.gradle inside depenedencies

Youssef-Durgham commented 1 year ago

I fix it by this way I don’t know try to search for it

mckeny3 commented 1 year ago

`package com.mckenytech.swyfiodriver import android.location.Location import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.mckenytech.swyfiodriver.databinding.MapboxActivityNavigationViewBinding import com.mapbox.api.directions.v5.models.RouteOptions import com.mapbox.geojson.Point import com.mapbox.maps.MapView import com.mapbox.maps.plugin.gestures.OnMapLongClickListener import com.mapbox.maps.plugin.gestures.gestures import com.mapbox.navigation.base.extensions.applyDefaultNavigationOptions import com.mapbox.navigation.base.extensions.applyLanguageAndVoiceUnitOptions import com.mapbox.navigation.base.route.NavigationRoute import com.mapbox.navigation.base.route.NavigationRouterCallback import com.mapbox.navigation.base.route.RouterFailure import com.mapbox.navigation.base.route.RouterOrigin import com.mapbox.navigation.core.lifecycle.MapboxNavigationApp import com.mapbox.navigation.core.trip.session.LocationMatcherResult import com.mapbox.navigation.core.trip.session.LocationObserver import com.mapbox.navigation.dropin.NavigationView import com.mapbox.navigation.dropin.map.MapViewObserver import com.mapbox.navigation.utils.internal.ifNonNull import com.mapbox.navigation.utils.internal.logD

/**

// binding.startTripButton.setOnClickListener { // ifNonNull(lastLocation, destination) { origin, destination -> // requestRoutes(Point.fromLngLat(origin.longitude, origin.latitude), destination) // } // }

}

override fun onDestroy() {
    super.onDestroy()
    binding.navigationView.unregisterMapObserver(mapViewObserver)
    MapboxNavigationApp.current()?.unregisterLocationObserver(locationObserver)
}

override fun onMapLongClick(point: Point): Boolean {
    ifNonNull(lastLocation, destination) { origin, destination ->
        requestRoutes(Point.fromLngLat(origin.longitude, origin.latitude), destination)
        //log
        logD("origin: ${origin.longitude}, ${origin.latitude}")
    }
    return true
}

private fun requestRoutes(origin: Point, destination: Point) {
    MapboxNavigationApp.current()!!.requestRoutes(
        routeOptions = RouteOptions
            .builder()
            .applyDefaultNavigationOptions()
            .applyLanguageAndVoiceUnitOptions(this)
            .coordinatesList(listOf(origin, destination))
            .alternatives(true)
            .build(),
        callback = object : NavigationRouterCallback {
            override fun onCanceled(routeOptions: RouteOptions, routerOrigin: RouterOrigin) {
                // no impl
            }

            override fun onFailure(reasons: List<RouterFailure>, routeOptions: RouteOptions) {
                // no impl
            }

            override fun onRoutesReady(
                routes: List<NavigationRoute>,
                routerOrigin: RouterOrigin
            ) {
                binding.navigationView.api.routeReplayEnabled(true)
                binding.navigationView.api.startActiveGuidance(routes)
            }
        }
    )
}}// Pa`
mckeny3 commented 1 year ago

thats my navigationView.kt...then this is the Navigationstarter to launch the activity `package com.mckenytech.swyfiodriver

import android.content.Intent import android.widget.Toast import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReactContextBaseJavaModule import com.facebook.react.bridge.ReactMethod

internal class NavigationViewActivityStarter(reactContext: ReactApplicationContext?) : ReactContextBaseJavaModule(reactContext) { private var context: ReactApplicationContext = reactApplicationContext override fun getName(): String { return "RNMapboxNavigation" }

@ReactMethod
fun navigateToExample() {
    Toast.makeText(context, "navigateToExample", Toast.LENGTH_LONG).show()
    val intent = Intent(context, NavigationViewActivity::class.java)
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
    context.startActivity(intent)

    context.currentActivity?.startActivity(intent)

}

}this is my navigationPackager.ktpackage com.mckenytech.swyfiodriver

import com.facebook.react.ReactPackage import com.facebook.react.bridge.NativeModule import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.uimanager.ViewManager

class NavigationViewReactPackage : ReactPackage { override fun createNativeModules(reactContext: ReactApplicationContext): List { val modules: MutableList = ArrayList() modules.add(NavigationViewActivityStarter(reactContext)) return modules }

override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> {
    return emptyList()
}

}then register your packager in MainApplicationActivitypackage com.mckenytech.swyfiodriver;

import android.app.Application; import android.content.res.Configuration; import androidx.annotation.NonNull;

import com.facebook.react.PackageList; import com.facebook.react.ReactApplication; import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactPackage; import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; import com.facebook.react.defaults.DefaultReactNativeHost; import com.facebook.soloader.SoLoader;

import expo.modules.ApplicationLifecycleDispatcher; import expo.modules.ReactNativeHostWrapper;

import java.util.List;

public class MainApplication extends Application implements ReactApplication {

private final ReactNativeHost mReactNativeHost = new ReactNativeHostWrapper(this, new DefaultReactNativeHost(this) { @Override public boolean getUseDeveloperSupport() { return BuildConfig.DEBUG; }

  @Override
  protected List<ReactPackage> getPackages() {
    @SuppressWarnings("UnnecessaryLocalVariable")
    List<ReactPackage> packages = new PackageList(this).getPackages();

// @generated begin implementation installer - expo prebuild (DO NOT MODIFY) sync-cb41cfe4a065c99a5a8fd5b134dc14d6b4d71981 packages.add(new NavigationViewReactPackage());

// @generated end implementation installer // Packages that cannot be autolinked yet can be added manually here, for example: // packages.add(new MyReactNativePackage()); return packages; }

  @Override
  protected String getJSMainModuleName() {
    return "index";
  }

  @Override
  protected boolean isNewArchEnabled() {
    return BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
  }

  @Override
  protected Boolean isHermesEnabled() {
    return BuildConfig.IS_HERMES_ENABLED;
  }

});

@Override public ReactNativeHost getReactNativeHost() { return mReactNativeHost; }

@Override public void onCreate() { super.onCreate(); SoLoader.init(this, / native exopackage / false); if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { // If you opted-in for the New Architecture, we load the native entry point for this app. DefaultNewArchitectureEntryPoint.load(); } ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); ApplicationLifecycleDispatcher.onApplicationCreate(this); }

@Override public void onConfigurationChanged(@NonNull Configuration newConfig) { super.onConfigurationChanged(newConfig); ApplicationLifecycleDispatcher.onConfigurationChanged(this, newConfig); } } ` now you will be able to launch it from the javascript side....this the latest mapbox ...10.13 and dropin ui 2.13 am using expo managed so i have to build config plugin to add all these...but if your useing bare workflow,you can add them directly

Youssef-Durgham commented 1 year ago

thats my navigationView.kt...then this is the Navigationstarter to launch the activity `package com.mckenytech.swyfiodriver

import android.content.Intent import android.widget.Toast import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.bridge.ReactContextBaseJavaModule import com.facebook.react.bridge.ReactMethod

internal class NavigationViewActivityStarter(reactContext: ReactApplicationContext?) : ReactContextBaseJavaModule(reactContext) { private var context: ReactApplicationContext = reactApplicationContext override fun getName(): String { return "RNMapboxNavigation" }

@ReactMethod
fun navigateToExample() {
    Toast.makeText(context, "navigateToExample", Toast.LENGTH_LONG).show()
    val intent = Intent(context, NavigationViewActivity::class.java)
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
    context.startActivity(intent)

    context.currentActivity?.startActivity(intent)

}

}this is my navigationPackager.ktpackage com.mckenytech.swyfiodriver

import com.facebook.react.ReactPackage import com.facebook.react.bridge.NativeModule import com.facebook.react.bridge.ReactApplicationContext import com.facebook.react.uimanager.ViewManager

class NavigationViewReactPackage : ReactPackage { override fun createNativeModules(reactContext: ReactApplicationContext): List { val modules: MutableList = ArrayList() modules.add(NavigationViewActivityStarter(reactContext)) return modules }

override fun createViewManagers(reactContext: ReactApplicationContext): List<ViewManager<*, *>> {
    return emptyList()
}

}then register your packager in MainApplicationActivitypackage com.mckenytech.swyfiodriver;

import android.app.Application; import android.content.res.Configuration; import androidx.annotation.NonNull;

import com.facebook.react.PackageList; import com.facebook.react.ReactApplication; import com.facebook.react.ReactNativeHost; import com.facebook.react.ReactPackage; import com.facebook.react.defaults.DefaultNewArchitectureEntryPoint; import com.facebook.react.defaults.DefaultReactNativeHost; import com.facebook.soloader.SoLoader;

import expo.modules.ApplicationLifecycleDispatcher; import expo.modules.ReactNativeHostWrapper;

import java.util.List;

public class MainApplication extends Application implements ReactApplication {

private final ReactNativeHost mReactNativeHost = new ReactNativeHostWrapper(this, new DefaultReactNativeHost(this) { @OverRide public boolean getUseDeveloperSupport() { return BuildConfig.DEBUG; }

  @Override
  protected List<ReactPackage> getPackages() {
    @SuppressWarnings("UnnecessaryLocalVariable")
    List<ReactPackage> packages = new PackageList(this).getPackages();

// @generated begin implementation installer - expo prebuild (DO NOT MODIFY) sync-cb41cfe4a065c99a5a8fd5b134dc14d6b4d71981 packages.add(new NavigationViewReactPackage());

// @generated end implementation installer // Packages that cannot be autolinked yet can be added manually here, for example: // packages.add(new MyReactNativePackage()); return packages; }

  @Override
  protected String getJSMainModuleName() {
    return "index";
  }

  @Override
  protected boolean isNewArchEnabled() {
    return BuildConfig.IS_NEW_ARCHITECTURE_ENABLED;
  }

  @Override
  protected Boolean isHermesEnabled() {
    return BuildConfig.IS_HERMES_ENABLED;
  }

});

@OverRide public ReactNativeHost getReactNativeHost() { return mReactNativeHost; }

@OverRide public void onCreate() { super.onCreate(); SoLoader.init(this, / native exopackage / false); if (BuildConfig.IS_NEW_ARCHITECTURE_ENABLED) { // If you opted-in for the New Architecture, we load the native entry point for this app. DefaultNewArchitectureEntryPoint.load(); } ReactNativeFlipper.initializeFlipper(this, getReactNativeHost().getReactInstanceManager()); ApplicationLifecycleDispatcher.onApplicationCreate(this); }

@OverRide public void onConfigurationChanged(@nonnull Configuration newConfig) { super.onConfigurationChanged(newConfig); ApplicationLifecycleDispatcher.onConfigurationChanged(this, newConfig); } } ` now you will be able to launch it from the javascript side....this the latest mapbox ...10.13 and dropin ui 2.13 am using expo managed so i have to build config plugin to add all these...but if your useing bare workflow,you can add them directly

can I get your telegram user and In your free time, answer my question because I will officially go crazy.

riyansghrt commented 11 months ago

any solution for this issue ?