How to set canOverrideExistingModule=true in React Native for Android Apps?

I built an android app using React Native, it got built successfully but when I run the app in my Android Virtual Device it shows up a full red screen with the following error:

enter image description here

I have not done native app development ever before neither do I have any knowledge of Java so I have no idea what this error means and how to fix this.


The name of the package associated to this error is not AirMapModule but MapsPackage from com.airbnb.android.react.maps.

In your MainApplication.java in directory : android/app/src/main/java/../../ remove any duplicate entry of :

  • the import package : import com.airbnb.android.react.maps.MapsPackage
  • the call to the constructor of the module : new MapsPackage() in function getPackages

Go to file "MainApplication.java" (under .\android\app\src\main\java\com\projectName\)

Make sure that under getPackages() function you don't have duplicate lines (in my case I had "new MapsPackage()" twice).

Fix duplicate imports as well.


Open the MainApplication.java file by this address: android/app/src/main/java/com/projectName/MainApplication.java and add the following code to MainApplication.java file:

@Override    
public boolean canOverrideExistingModule() {        
  return true;    
}   

And everything became correct.